请解释跨浏览器字符串长度的差异
Please explain this difference in cross browser string.length
我在Firefox v6.0.2和IE7中运行这段代码。在Firefox中,我选择了单选按钮。然后单击"测试"。我得到的字符串长度为10。在IE7中,我得到字符串长度9。
<script type="text/javascript">
function TestMethod() {
var name;
var address;
var city;
var state;
var zip;
var indexor = 0;
$('input[name=radioBtnSet1]:checked').parent().siblings().each(function (i, cell) {
if (indexor === 0)
name = $(cell).text();
else if (indexor === 1)
address = $(cell).text();
else if (indexor === 2)
city = $(cell).text();
else if (indexor === 3)
state = $(cell).text();
else if (indexor === 4)
zip = $(cell).text();
indexor++;
});
alert(name.length);
alert('FACILITY NAME: ' + '|' + name + '|');
}
</script>
<input id="runTest" onclick="javascript:TestMethod();" type="button" value="Test"/>
<table id="someTable">
<thead>
<tr>
<th></th>
<th>Header</th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th>Date</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="radio" value=" HHH VALUE" name="radioBtnSet1" /></td>
<td style="text-align: left;"> HHH VALUE</td><td class="DisplayNone">200 SOME STREET DR</td>
<td class="DisplayNone">CITY</td><td class="DisplayNone">TX</td>
<td class="DisplayNone">75007-3726</td>
<td style="padding-left: 1em;">9/30/2011</td>
</tr>
</tbody>
<tfoot>
<tr>
<th></th>
<th></th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th class="DisplayNone"></th>
<th></th>
</tr>
</tfoot>
</table>
为什么?怎样才能使它们相等呢?
从本页的评论中可以看出,问题出在jQuery的text
函数上。在IE 7中,它不保留前后空白。在FF中,确实如此。因此,IE 7和FF中的字符串和长度不同。
如果您需要空格,请尝试使用
。
相关文章:
- Javascript 如何强制 string.replace 不将我的字符串解释为正则表达式
- 注入的HTML仅在Dom中解释为字符串
- 如何将JS字符串解释为文件或在Bundlebars中使用字符串
- 传递的URL字符串未解释为字符串
- 让日期字符串在浏览器中得到相同的解释
- 用“i”替换字符串中的元音..你能解释一下这个表达吗?someText.replace(/[aAeEoOuU]/ig,“
- 角度指令 将属性解释为字符串
- 数组中的字符串“”被解释,是否有解决方法
- 如何将文件内容解释为模板字符串
- 将 grunt 命令行选项解释为字符串
- 谁能解释这种关于字符串连接的奇怪 JS 行为
- 在Javascript字符串文本中解释HTML标记
- 将javascript连接字符串解释为变量
- Salesforce中的对象在Google Apps Script/Javascript中被解释为字符串
- 生成一个与Javascript字符串匹配的Regex对象.解释方法
- AJAX响应被解释为字符串
- 需要解释这个Javascript字符串资本主义原型
- nodeValue字符串解释为数字
- 将二进制字符串解释为Python中的图像,由Javascript本地方法生成
- javascript库将字符串解释为JSON对象.任何想法