Jquery—重新认识Jquery中的html()方法

解决IE8中JavaScript获取表格特定单元格问题
本文详细阐述了在IE8浏览器中,使用JavaScript获取表格中特定单元格内容时遇到的问题及解决方案。通过调整代码逻辑,确保了在不同浏览器下都能正常工作。

        今天测试给我提了一个bug:在页面上我需要借助"</td>"来获取表格中某行内的某列以后的单元格,也就是说里面有这样一行代码:“tr = tr.substring(tr.indexOf("</td>"));”,这个JavaScript脚本在谷歌等浏览器中均可以达到预期效果,可是在IE8中就不行了,弄了一个多小时最后终于发现了问题,先看如下代码:

<html>
	<head>
		<title>重新认识Jquery中的html()方法</title>
		<meta http-equiv="Content-Type" content="text/html; charset=GB2312"/>
		<script type="text/javascript" src="./jquery-1.6.2.js"></script>
		<script type="text/javascript">
		    $(function(){
				alert($("table").html());
			});
			
		</script>
	</head>

	<body>
		<table width="100" border="0" cellpadding="0" cellspacing="0">
			<tr>
				<td><input type="text" id="userName" name="userName"></td>
			</tr>
		</table>
	</body>
</html>

        该代码在谷歌浏览器中可以“理想”地在提示框中显示出来,可是在IE8中我们会发现提示框中的所有标签均变成了大写,所以“tr = tr.substring(tr.indexOf("</td>"));”当然不起作用了,没办法,最终的解决方案为:tr = tr.indexOf("</td>") == -1 ? tr.substring(tr.indexOf("</TD>")) : tr.substring(tr.indexOf("</td>"));

        说明:上面解决方案中tr是变量,呵呵呵,我只是粘贴出了一部分代码,这行代码是在$.each()数组遍历方法中的。

        【0分下载资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿老高

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值