好吧,假设我有一个字符串:
var xmlString = '<main><id>5</id><name>test-string</name></main>';
然后我希望这个字符串的行为就像它是一个 jQuery 对象:
var xmlString = '<main><id>5</id><name>test-string</name></main>',
xmlString = $(xmlString);
一旦我这样做了,我想找到 ID 节点的值:
var xmlString = '<main><id>5</id><name>test-string</name></main>',
xmlString = $(xmlString),
findIdTest = xmlString.find('id').text(),
filterIdTest = xmlString.filter('main').find('id').text();
我尝试了两种方法,
xmlString.find('id').text()
和
filterIdTest = xmlString.filter('main').find('id').text();
在 FF、Chrome 和 IE9 中,两种方法的结果始终为 5。
在 IE7 和 IE8 中,我什么也没得到..(空字符串)..
有谁知道为什么会发生这种情况......?
这是一个可以使用和排除故障的 fiddle :
最佳答案
在创建 jQuery 对象之前使用 jQuery.parseXML
来创建有效的 XML 文档。
http://api.jquery.com/jQuery.parseXML/
var xmlString = '<main><id>5</id><name>test-string</name></main>',
xmlDoc = $.parseXML(xmlString),
myObj = $(xmlDoc);
myObj.find("id").text();
关于jquery - IE7/8 不解析新创建的 jQuery 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9130674/