jquery的id.text()在ie8中忽略多于1个空格

时间:2012-11-06 13:53:51

标签: javascript jquery internet-explorer

我有一个id为SOMEID的span。当我使用下面的代码访问它的文本值时,它只在IE8和IE7中破解。如何修复它。

$("#DocumentPath").text()。如果DocumentPath包含My doc.txt这样的名称,则它无效。请注意,我和doc之间有3个空格。

3 个答案:

答案 0 :(得分:2)

你非常模糊的问题描述"它破坏的代码"可以让我们只猜测,但请注意以下内容:IE对标记中的空格不同于其他浏览器。

来自docs

  

(由于不同浏览器中HTML解析器的不同,返回的文本可能会在换行符和其他空格中有所不同。)

     

.text()方法的结果是一个包含所有匹配元素的组合文本的字符串。

     

从jQuery 1.4开始,.text()方法返回text和CDATA节点以及元素节点的值。

如上所述,使用html()方法可能更适合您。

答案 1 :(得分:0)

应该是

$("#DocumentPath").html()

那说你说你的跨度有一个ID SOMEID?!如果它的ID是SOMEID,它应该是:

$("#SOMEID").html()

答案 2 :(得分:0)

也许你应该尝试另一种方法,在jQuery的文档中,他们建议调用.eval()函数来检索值,而不是.text()检查他们的文档:http://api.jquery.com/text/

所以代码片段可能是:

$("#DocumentPath").eval()

此致

:)