我正在尝试从下拉菜单中触发选项上的事件。 例如:
<select id="select1">
<option id="1">1</option>
<option id="2">1</option>
</select>
我在http://api.jquerymobile.com/taphold/上使用了一个例子并将事件附加到了 id为1的选项:
$( "#1" ).bind( "taphold", tapholdHandler );
为了测试功能,tapholdHandler只是一个简单的警报。 但是没有用。
另外,我试图使用
jQuery( "#1" ).on( "tap", function( event ) {alert('works!');} )
但没有成功。 但是,我发现可以将它附加到select元素,但它适用于select标记中的所有选项元素。 如何在单个选项元素上触发longclick / taphold事件? 我想做的是能够长按(按住点击)所需的项目,并显示一个对话框,提供从列表中删除项目。
答案 0 :(得分:1)
你的选择器错了
$('#1')
将选择id = 1
将您的代码更改为
$( "#1" ).bind( "taphold", tapholdHandler );
您无法以任何实际精度将事件绑定到<option>
元素。但是,您可以在其他地方声明绑定到本案例中选择菜单的change
事件
$('#select1').change(function(){
var selected_option = $(this).find(':selected');
});
答案 1 :(得分:0)
$('#1')
将选择id = 1
将您的代码更改为
$( "#1" ).bind( "taphold", tapholdHandler );
和
$( "#1" ).on( "tap", function( event ) {alert('works!');} )
答案 2 :(得分:0)
如何绑定到&#39;更改&#39;?这将在选择或更改元素时触发。
$('#select1').change(function(){
// action here
});