特定のテキスト入力にバインドされた変更イベントを持つ jQuery モバイル アプリケーションがあります。特に、type="search" のテキスト入力は、type"text" テキスト入力のように "change" イベントで発生しません。説明するスニペットを次に示します。
HTML
<div data-role="page" id="p1">
<div data-role="content">
<a href="#p2" data-role="button">Go To Page 2</a>
</div>
</div>
<div data-role="page" id="p2">
<div data-role="content">
<p>This is page2</p>
<input type="text" id='mytextbox'></input>
<input type="search" id='mysearchbox'></input>
</div>
</div>
JavaScript
$('#mytextbox').change(function() {
alert('Hello World!');
});
$('#mysearchbox').change(function() {
alert('Hello World!');
});
両方のテキスト入力は、ID とタイプを除いて同一です。テキスト ボックスは change イベントで発生しますが、検索ボックスは発生しません。
私が見つけたのは、テキスト入力がページ 1 にある場合、すべてが期待どおりに機能することです。これは、ページの変更とテキスト フィールドのタイプとの関係です。
ここにフィドルがあります:http://jsfiddle.net/nMR85/1644/