方法.text()和.html()在IE7中的jQuery strip尾随空格?

时间:2010-12-21 08:18:41

标签: jquery string insert whitespace internet-explorer-7

我正在使用jQuery在HTML标记内插入文本。 HTML代码如下所示:

<h5>Do you want to send a message to <span id='firstName'></span> right now?</h5>

用于在span标记内插入文本的jQuery代码如下所示:

var myFirstName = "Thomas";
$("h5 span.firstName").html(myFirstName);

当我在Firefox,Chrome,Safari或IE8中运行此代码时,结果如下:

<h5>Do you want to send a message to <span id='firstName'>Thomas</span> right now?</h5>

但在Internet Explorer 7中,结果如下:

<h5>Do you want to send a message to <span id='firstName'>Thomas</span>right now?</h5>

剥离span标记后的尾随空格,导致屏幕上显示的文字显示为:“您是否要立即向Thomasright发送消息?”。

我尝试过使用.html()和.text(),但结果没有区别。

有没有办法解决这个错误?它是jQuery / IE7中的已知错误吗?

提前致谢!

/ Thomas Kahn

2 个答案:

答案 0 :(得分:2)

这很奇怪,但你可以这样做:

var myFirstName = "Thomas&nbsp;";
$("h5 span.firstName").html(myFirstName);

答案 1 :(得分:2)

<span id='firstName'></span>设为<span id='firstName'>&nbsp;</span>将解决问题。 ^^

simple demo page

^在IE 7上打开