正如您在this page上看到的那样,jQuery mobile在输入搜索框中的输入文本右侧呈现“X”。如何附加“X”的点击事件?
答案 0 :(得分:12)
$('.ui-input-clear').live('click', function(e){
alert('click!');
});
是一个很好的起点。我使用live
,因为搜索框不一定在加载页面中。
这当然是非特定的,使用类,但如果需要可以这样做。
更新:从jQuery 1.7 .live
开始,我们弃用了.on
:http://api.jquery.com/on/
$('.ui-content').on('click', '.ui-input-clear', function(e){
alert('click!');
});
答案 1 :(得分:2)
将click
绑定到整个事物,然后确定用event.target
点击的内容,该事件在事件冒泡时保存最初点击的元素。
如果检查某些类应该这样做的简单。
从绑定点击开始,嗅探点击的内容:
$(theinput).click(function(e){
console.log(e.target);
});
答案 2 :(得分:1)
使用 jQuery 1.9 和 jQuery Mobile 1.3 进行测试:
我在表单中输入了内容,将事件置于其中的元素中:
<form id="frmBusqueda" action="frmBusqueda">
<input name="txtBusqueda" id="txtBusqueda" placeholder="Nombre de producto"
value="" type="search" data-clear-btn="false" onkeyup="activarFiltro();">
</form>
$('#frmBusqueda').on('click', '.ui-input-clear', function (e) {
alert('click!');
})