Jquery split()返回在FF和Chrome中有索引但在IE中只有一个索引的数组
可能重复:Jquery split()返回在FF和Chrome中有索引但在IE中只有一个索引的数组,jquery,arrays,split,Jquery,Arrays,Split,可能重复: 我在IE中遇到了一些与此代码相关的问题: var frameFromValues = $('#getData').contents().find("body table tbody tr#c_"+ currencyFrom).text().split('\n'); console.log(frameFromValues); Chrome中的控制台显示: ["", " KRA", " Fenix", " 1", "
我在IE中遇到了一些与此代码相关的问题:
var frameFromValues = $('#getData').contents().find("body table tbody tr#c_"+ currencyFrom).text().split('\n');
console.log(frameFromValues);
Chrome中的控制台显示:
["", " KRA", " Fenix", " 1", " 1", " "]
IE 9中的控制台显示:
KRAFenix11
正因为如此,当我试图通过它的索引得到一个值时,如下所示:
cFrom = frameFromValues[5];
它在IE中表示“未定义”,但在Chrome中工作得非常好
如何使其在IE中工作?尝试删除
修剪()代码>功能代替修剪使用:
cFrom = frameFromValues[5].replace(/^\s+|\s+$/g, '');
看一看,我已经添加了:String.prototype.trim=function(){return$.trim(this)}将尝试双引号。编辑:双引号没有运气。我会看看这个奇怪的链接是否能帮我弄清楚。它不是关于split
(工作正常,请在IE控制台中尝试),而是关于text()
函数。基本上IE跳过\n
,因此拆分返回一个元素数组。@freakish我试图将数据封装在数组中,但没有解决问题。@estrar您是否也尝试过设置CSS规则#div{white space:pre}
?我们谈论的是什么版本的IE?用例子给出适当的解释,你也可以编写/修改代码。FrameFromValues[5]在IE中没有定义,所以这并不重要。我明白了,用innerhtml()代替text()