Javascript jQuery将属性集作为字符串插入到标记
我有一个变量x,它包含一组属性 var x='class=“test1 test2”id=“xyz”style=“color:red”代码> 如何在Javascript jQuery将属性集作为字符串插入到标记,javascript,jquery,attributes,Javascript,Jquery,Attributes,我有一个变量x,它包含一组属性 var x='class=“test1 test2”id=“xyz”style=“color:red” 如何在标记中插入x。所以身体看起来像 这可能不是防弹的,但它似乎可以很好地处理示例输入: var x = 'class="test test1 test2" id="xyz" style="color:red"', pairs = x.match(/\w+\=\"[^\"]+\"/g), $body = $('body'); for (var i
标记中插入x。所以身体看起来像
这可能不是防弹的,但它似乎可以很好地处理示例输入:
var x = 'class="test test1 test2" id="xyz" style="color:red"',
pairs = x.match(/\w+\=\"[^\"]+\"/g),
$body = $('body');
for (var i = 0, len = pairs.length; i < len; i++) {
var parts = pairs[i].split('='),
attrName = parts[0],
attrValue = parts[1].replace(/\"/g, '');
$body.attr(attrName, attrValue);
}
var x='class=“test1 test2”id=“xyz”style=“color:red”,
pairs=x.match(/\w+\=\“[^\”]+\“/g),
$body=$('body');
对于(变量i=0,len=pairs.length;ivar x = 'class="test test1 test2" id="xyz" style="color:red"',
pairs = x.match(/\w+\=\"[^\"]+\"/g),
$body = $('body');
for (var i = 0, len = pairs.length; i < len; i++) {
var parts = pairs[i].split('='),
attrName = parts[0],
attrValue = parts[1].replace(/\"/g, '');
$body.attr(attrName, attrValue);
}
var x='class=“test1 test2”id=“xyz”style=“color:red”,
pairs=x.match(/\w+\=\“[^\”]+\“/g),
$body=$('body');
对于(变量i=0,len=pairs.length;ivar x = 'class="test test1 test2" id="xyz" style="color:red"',
temp = $("<b "+x+">")[0],
attr = {};
for (var i=0, attrs=temp.attributes, l=attrs.length; i<l; i++){
attr[attrs.item(i).nodeName] = attrs.item(i).value;
}
$("body").attr(attr);
var x='class=“test1 test2”id=“xyz”style=“color:red”,
温度=$(“”)[0],
attr={};
对于(var i=0,attrs=temp.attributes,l=attrs.length;i您可以为其创建一个temp元素和att属性,然后将其所有属性附加到主体:
var x = 'class="test test1 test2" id="xyz" style="color:red"',
temp = $("<b "+x+">")[0],
attr = {};
for (var i=0, attrs=temp.attributes, l=attrs.length; i<l; i++){
attr[attrs.item(i).nodeName] = attrs.item(i).value;
}
$("body").attr(attr);
var x='class=“test1 test2”id=“xyz”style=“color:red”,
温度=$(“”)[0],
attr={};
对于(var i=0,attrs=temp.attributes,l=attrs.length;iIs)您这样存储它有什么特别的原因吗?为什么不
x={'class':'testtest1 test2','id':'xyz','style':'color:red'}
?那么您可以只做$('body')。attr(x)
!您这样存储它有什么特别的原因吗?为什么不x={'class':'testtest1 test2','id':'xyz','style':'color:red'}
?然后你就可以做$('body')。attr(x)
!谢谢,它工作了。我原以为解决方案会更简单,但现在就可以了。谢谢,它工作了。我原以为解决方案会更简单,但现在就可以了。