如何在jquery中的Select List上按Enter键后运行函数

b4wnujal  于 2023-10-17  发布在  jQuery
关注(0)|答案(4)|浏览(119)

我有一个选择列表,我想当改变选项选择列表和回车键按下运行jquery函数。这是我的代码:

$("#productlist").keydown(function(){
  
  //for example 
  
  alert('Enter Pressed');
  });
<select id="productlist">
<option id="1" value="1">1<option>
<option id="2" value="2">2<option>
<option id="3" value="3">3<option>
<option id="4" value="4">4<option>
</select>
inkz8wg9

inkz8wg91#

如果我理解你的问题是正确的,你想做一些东西,当用户选择的项目从列表中。

$('select').change(function(){
  var text = $(this).val();
  alert(text);
});

更新:上述代码也适用于移动的设备。
JSFiddle

2exbekwf

2exbekwf2#

这不是预期的行为。此外,它不适用于移动的设备
on("change"是更好的,如果没有按钮点击。
您将不得不添加一个“请选择”选项,以工作。
如果你想让回车键提交,添加一个提交按钮。这将有附加价值,允许移动的和屏幕阅读器用户也使用您的界面

jvidinwx

jvidinwx3#

试试这个

$("#productlist").keydown(function(e){

    if (e.keyCode == 13) {
        alert('Enter Pressed');
    }      
  });
xpszyzbs

xpszyzbs4#

查看keypress方法。每当键执行任何操作时,它都会回调。这将是工作。

<!DOCTYPE html>
<html>
    <head>
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
    </head>
    <body>
        <select id="productlist">
            <option id="1" value="1">1</option>
            <option></option>
            <option id="2" value="2">2</option>
            <option></option>
            <option id="3" value="3">3</option>
            <option></option>
            <option id="4" value="4">4</option>
            <option></option>
        </select>

        <script>
            $("#productlist").keypress(function(){

              //for example

              console.log('Enter Pressed');
              });
        </script>
    </body>
</html>

相关问题