使用jQuery在JavaScript控制台(Chrome或其他东西)上试试这个。
var jo = $("<xml required=\"true\" name=\"lol\"></xml>"); //test xml
jo.attr("required"); //returns "required" instead of true
jo.attr("name"); //returns correct "lol"
jo.prop("required"); //returns undefined
jo.prop("name"); //returns undefined
那里的任何人都有一个有效的解决方案来获取此xml的正确必需值(true/false
)?
.prop()
仅适用于<input>
之类的html。
答案 0 :(得分:8)
jQuery代码根据HTML世界的名称和语义,对属性及其性质有自己的看法。这就是“必需”为您提供“必需”作为其属性值的原因。
您可以尝试直接使用.getAttribute()
,但其结果可能与浏览器有关:
jo[0].getAttribute("required");
.prop()
函数仅适用于HTML DOM元素,因为它依赖于浏览器创建具有反映从源解析的属性值的属性的对象。