Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript/jQuery读取多个SELECT值_Javascript_Jquery_Html - Fatal编程技术网

使用JavaScript/jQuery读取多个SELECT值

使用JavaScript/jQuery读取多个SELECT值,javascript,jquery,html,Javascript,Jquery,Html,我知道SELECT multiple会让查看器在下拉列表中选择多个项目,然后表单提交会传递所有选择的项目。但是,在JavaScript中,当没有表单提交,而您只是在等待一个选择更改时,这是如何工作的: $('#delete_dropdown').change(function(e){ 然后查看所选值的$(e.target).val() 谢谢您可以查看处理程序中的上下文,val()将返回元素数组,使用jquery您可以执行以下操作: $('#delete_dropdown').change

我知道SELECT multiple会让查看器在下拉列表中选择多个项目,然后表单提交会传递所有选择的项目。但是,在JavaScript中,当没有表单提交,而您只是在等待一个选择更改时,这是如何工作的:

$('#delete_dropdown').change(function(e){
然后查看所选值的
$(e.target).val()


谢谢

您可以查看处理程序中的
上下文,val()将返回元素数组,使用jquery您可以执行以下操作:

   $('#delete_dropdown').change(function(e){
        var selectedArray = $(this).val();  //Array of selected values
   });


如果您使用的是香草javascript,您需要循环检查选项,以检查哪些选项都被选中,并添加它们以适合您自己。

这太好了!谢谢我对jQuery很在行,所以我可以做数组的事情。关于您的JSFIDLE,我注意到的一点是(我添加了一些选项,所以现在就结束了),每次单击都会调用您(自然地,因为它是一个“更改”处理程序),但当他们最终完成选择时,是否有一些线索?@Steve yes您是对的,更改事件的值更改时会触发,因此,每次选择/取消选择都会触发更改。你不能保证当他们最终完成选择时,因为选择/取消选择会触发更改,所以你必须在更改处理程序中手动检查,如果数组长度等于选项的长度,那么所有选项都被选中。