是否可以在选择HTML5数据列表中的项目时执行某些代码?

3Ne*_*Nex 5 javascript events html5 html-datalist

例如:

<input type="text" list="sample"/>
<datalist id="sample">
    <option value="item 1"/>
    <option value="item 2"/>
</datalist>
Run Code Online (Sandbox Code Playgroud)

是否可以在选择了数据列表中的项目时捕获事件?在输入元素上调用onclick或onchange不起作用.

Nee*_*eel 1

    $(document).ready(function() {

$("#search").on("input", function(e) {
var val = $(this).val();
if(val === "") return;
....
    var dataList = $("#searchresults");
dataList.empty();
 your code...

}); 
});
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,这让我成功了一半,因为选择数据列表项时会触发“输入”,而我之前不知道如何完成。此外,有没有办法区分数据列表项是何时从正常的打字事件中选择的?使用当前代码,当选择数据列表项、用户键入以及将文本粘贴到输入字段(仅限鼠标)时,会触发该事件。 (2认同)