我确定这是一个非常简单的答案,我有一个绑定到数据列表的文本输入框。我可以使用jquery为每个键入的键触发一个事件("更改键盘"),但是我也想在从datalist下拉列表中选择一个项目时触发一个事件。
使用下面的代码,我需要点击该项目,然后按一个键激活。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
<datalist id="mydata"><option value="select1" /><option value="select2" /></datalist>
<input type="text" list="mydata" />
</div>
<script>
$("#div1").delegate(":input", "change keyup", function (e) {
console.log('fired');
});
</script>
&#13;
选择项目后会触发什么事件? Onclick似乎不是一个好选择,因为它会在任何点击时触发。
答案 0 :(得分:1)
您的最佳活动是使用input
活动,而不是change
或keyup
活动。
$("#div1").delegate(":input", "input", function (e) {
console.log('fired');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div id="div1">
<datalist id="mydata"><option value="select1" /><option value="select2" /></datalist>
<input type="text" list="mydata" />
</div>
&#13;