我有一个jQuery移动应用程序,其中包含绑定到某些文本输入的更改事件。文本输入类型="搜索"特别是不要对#34;变化"事件类似"文字"文字输入。这是一个解释的片段:
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和类型之外,两个文本输入都是相同的。文本框会在更改事件中触发,搜索框不会显示。
我发现的是,如果文本输入位于第1页,那么一切都按预期工作。所以这是页面更改和文本字段类型之间的关系。
这是一个小提琴:http://jsfiddle.net/nMR85/1644/
答案 0 :(得分:4)
替换此
<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>
用这个
<div data-role="page" id="p2">
<div data-role="content">
<p>This is page2</p>
<input data-type="text" id='mytextbox'></input>
<input data-type="search" id='mysearchbox'></input>
</div>
</div>
不同之处在于我需要指定“数据类型”而不是“类型”。
答案 1 :(得分:0)
我希望您在进行搜索时能够获得更改事件。 type='search'
还有其他一些相关事件。在这种情况下,您必须检查onSearch
事件。您可以在此链接中查看更多内容 - reference。