通过变量分配属性名称(jQuery)

通过变量分配属性名称(jQuery),jquery,arrays,for-loop,attributes,Jquery,Arrays,For Loop,Attributes,我只是想知道,是否可以使用预先确定的变量通过.attr()分配属性名?下面的例子将说明我的意思 HTML <select id="dobPicker" data-test="1" data-another-test="2"> <option></option> </select> <div class="select"> <ul> <li> </ul> <

我只是想知道,是否可以使用预先确定的变量通过.attr()分配属性名?下面的例子将说明我的意思

HTML

<select id="dobPicker" data-test="1" data-another-test="2">
    <option></option>
</select>

<div class="select">
    <ul>
        <li>
    </ul>
</div>

jQuery

$(document).ready(function() {
    var attrs = $("select")[0].attributes;

    for (var i = 0; i < attrs.length; i++) {
        var attrName = attrs[i].nodeName,
            attrVal = attrs[i].nodeValue;

        if (attrVal.length == 0) {
            attrVal = "NULL";
        }

        $(".select").attr({
            attrName: attrVal
        });
    }
});
$(文档).ready(函数(){
var attrs=$(“选择”)[0]。属性;
对于(变量i=0;i

请记住,这是一个非常简短的例子。我有更复杂的方法来创建自定义选择,方法是将原始选择预先包装在
标记中,但无论如何,这并不相关。正如您所看到的,属性名和变量都返回了,问题是,(显然它们会)attrName显示为attrName,而不是等效的变量,而attrVal工作。是否有任何可能的方法为属性名输出变量?

不要使用对象仅使用名称-值对
.attr('somename','somevalue')


不要使用对象,只使用名称-值对
.attr('somename','somevalue')


不要使用对象,只使用名称-值对
.attr('somename','somevalue')


不要使用对象,只使用名称-值对
.attr('somename','somevalue')

 $(".select").attr(attrName, attrVal);