Javascript 使用每个

Javascript 使用每个,javascript,jquery,select,each,Javascript,Jquery,Select,Each,我正试图用select中的选定值填充Jquery中的数组 这是我的jquery no-ajax调用,因为在调用ajax将字段输入数据库之前,我首先要生成数组 $('#add-group-form').submit(function(e) { e.preventDefault(); var contactsArr = []; $("select option").each(function(i, val){ var $val = $(val);

我正试图用select中的选定值填充Jquery中的数组

这是我的jquery no-ajax调用,因为在调用ajax将字段输入数据库之前,我首先要生成数组

$('#add-group-form').submit(function(e) {
    e.preventDefault();
    var contactsArr = [];
    $("select option").each(function(i, val){
        var $val = $(val);
        if($(i).attr('selected', 'selected')){
        contactsArr.push({value: $val.val()});
        }
    });
    console.log(contactsArr);
});
现在老实说,我从不同的来源得到了每一个

不确定如何检查属性以确保其处于选中状态

提前谢谢你的帮助

**编辑:

好吧,我可能忘了检查答案,因为我被试图弄明白的事情弄得心烦意乱

这就是我在系统中测试和工作的方式

var contactsArr = [];
$(".edit-contact-select option:selected").each(function() {
    contactsArr.push({value: $(this).val()});
});

我把整个事情复杂化了

您不需要遍历所选选项。改用这个:

$('#add-group-form').submit(function(e) {
    e.preventDefault();
    var contactsArr = [];
    $('select').each(function(){
        contactsArr.push({value: $(this).val()});
    });
    console.log(contactsArr);
});
$'select'.val实际上返回select输入的选定值


希望这会有所帮助。

您不需要反复查看所选选项。改用这个:

$('#add-group-form').submit(function(e) {
    e.preventDefault();
    var contactsArr = [];
    $('select').each(function(){
        contactsArr.push({value: $(this).val()});
    });
    console.log(contactsArr);
});
$'select'.val实际上返回select输入的选定值


希望对您有所帮助。

看起来您有一个多重选择,如果这样,您可以使用.val来获取数组中的选定值

$('#add-group-form').submit(function (e) {
    e.preventDefault();
    var contactsArr = $("select").val();
    console.log(contactsArr);
});
如果要存储来自多个选择元素的选定值,请使用like


看起来您有一个多选if,因此可以使用.val获取数组中的选定值

$('#add-group-form').submit(function (e) {
    e.preventDefault();
    var contactsArr = $("select").val();
    console.log(contactsArr);
});
如果要存储来自多个选择元素的选定值,请使用like

如果$i.attr'selected','selected'{是问题所在。您不需要将selected分配给所选属性。您需要确定它是否被选中。如果$i.attr'selected','selected'{是问题所在。您不需要将selected分配给selected属性。您需要确定它是否已被选中。是的,$'select'。eachfunctionargs{}args关闭了此答案,修复了它,$i错误,应该是$this,GalV的答案修复了它。是的,$'select'。eachfunctionargs{}args关闭了这个答案,修正了它,$i是错误的,应该是$this,GalV的答案修正了它。