我在网站上使用多个选择框,并使用每个选择框中的 id
来选择 :selected
val 并将其设置为变量。您将看到下面随机选择的 3 个,而我坚持将单词 val 添加到设置多个变量的新方法中。
之前
var maptypecontrolval = $('#maptypecontrol>option:selected').val();
var pancontrolval = $('#pancontrol>option:selected').val();
var clickzoomcontrolval = $('#clickzoomcontrol>option:selected').val();
之后
$(".settings select").each(function(){
var id = $(this).attr('id');
console.log(id);
});
最佳答案
我不会将每个选项作为单独的变量,而是创建一个对象来存储所有变量值。
var appOptions = { };
$(".settings select").each(function() {
var id = $(this).prop('id');
appOptions[id] = $(this).val();
});
如果您忘记在选择器中的选择元素上放置 id,则此方法存在变得不可预测的风险,因此您可能需要添加一些验证:
if (!id) throw 'select without id';
顺便说一句:您从代码中的 attr()
获取了 id 值。您应该使用 prop()
。
http://api.jquery.com/prop/
关于jquery - 在 jQuery 中从变量设置变量名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19892863/