使用每个选择的值填充 jquery 数组
Populating a jquery array from values of a select using each
我正在尝试使用选择中的选定值填充 Jquery 中的数组。
这是我的jquery(没有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()});
});
我把整个事情复杂化了。
您不需要循环访问option
s 以获得"选定"的 s。 请改用这个:
$('#add-group-form').submit(function(e) {
e.preventDefault();
var contactsArr = [];
$('select').each(function(){
contactsArr.push({value: $(this).val()});
});
console.log(contactsArr);
});
$('select').val()
实际上返回选择输入的选定值。
希望有帮助。
看起来你有一个多选,所以你可以使用 .val() 来获取数组中的选定值
$('#add-group-form').submit(function (e) {
e.preventDefault();
var contactsArr = $("select").val();
console.log(contactsArr);
});
如果要存储来自多个选择元素的选定值,请使用 .map()
$('#add-group-form').submit(function (e) {
e.preventDefault();
var contactsArr = $("select").map(function (i, val) {
return $(this).val()
}).get();
console.log(contactsArr);
});
相关文章:
- 用我的json数据填充JQuery DataTable
- 解析和填充 jQuery 插件的选项数组
- 试图用php文件填充jquery
- 用 angularjs 填充 jquery 移动表
- 从替代字段填充 jquery UI 日期选择器日期字段
- 使用 ajax 从 mysql 填充 jQuery 数据表
- 尝试从 JSON 文件填充 JQuery 中的列表.如何调试
- 用服务器数组填充 jquery 数组
- 如何使用 Restangular 填充 jQuery UI Select2
- 如何从 Ajax 响应中重新填充 jquery UI 日期选择器
- 从 XML 填充 jquery 表单
- 使用每个选择的值填充 jquery 数组
- 如何从 pouchdb 数据填充 jquery 移动列表视图
- 用数据预填充 jQuery 自动完成
- 用如何刷新列表填充 jquery 页面
- 用javascript变量填充jquery模态表单字段值
- 重新填充Jquery多选框
- 用多个列表填充jquery select下拉表单
- 动态填充jquery UI类别自动完成
- 从数组中随机选择一个项目并填充-jQuery