jquery在ie7下选择器的问题导致append失效的解决方法
1,有如下这样一段html
<div class="right"id="pending">
<table class="one"width="100%"border="0"cellspacing="0"cellpadding="0">
<tbody>
</tbody>
</table>
<div id="pendingpage"class="paging">
</div>
</div>
2,我用jquery动态填充tbody下的内容代码如下
$("#pending table tbody").empty().append(th).append(html);
这段代码在ie7及以下ie版本会有问题,jquery无法通过#pending table tbody 找到正确的dom位置并append内容。需要修改,修改的代码如下
$("table tbody").empty().append(th).append(html);
把#pending去掉 直接通过table tbody找dom
3,我一时很疑惑,级联的选择器很常见,但是在ie7下为什么有这种问题,难道是jquery的bug或者div下嵌套table tbody的html写法不够标准?
下面继续补充一下:
jquery在IE中使用append应注意的问题
$(document).ready(function() { $.ajax({ url: 'Cutepage.htm', dataType: 'json', data: 'type=Init&PageSize=' + EachPage + '&PageIndex=1', success: function(msg) { //在IE7下无法显示,在火狐下没有问题。。。。。 $('#Content').append('<tr><td width="19%"> 商品编号</td><td width="15%">商品名字</td><td width="20%">供应商商编号</td><td width="30%">商品种类编号</td><td width="10%">单价</td></tr>'); }, error: function(x) { alert("服务器错误代码:" + x.status); $('#Loading').hide(); } }); });
修改(如下):
$(document).ready(function() { $.ajax({ url: 'Cutepage.htm', dataType: 'json', data: 'type=Init&PageSize=' + EachPage + '&PageIndex=1', success: function(msg) { //修改后...(这样就没有问题了,可以看出Jquery对html标签是比较敏感的,以后需要注意........) var pageContent = ''; pageContent += '<table border="2">'; pageContent += '<tr><td width="19%"> 商品编号</td><td width="15%">商品名字</td><td width="20%">供应商商编号</td><td width="30%">商品种类编号</td><td width="10%">单价</td></tr>'; pageContent += '</table>'; $('#Content').append(pageContent ); }, error: function(x) { alert("服务器错误代码:" + x.status); $('#Loading').hide(); } }); });
就是将内容复制给一个参数,不要直接使用html内容。
jQuery的append方法不支持连接等HTML属性的解决
很是郁闷,今天写程序,想在文档对象中append一些html上去,诸如<b><p>这些完全没有问题,可是碰到了带链接的HTML如:
$("#test").append("<a href='#'>test</a>");
firefox毫无问题,IE6、IE7一直到IE8就死活上不去,只显示文本内容,不带任何连接。准备Google一下,却发现Google.com已然无法登陆,Google.cn上查询出来的基本上一页全是采集站的那些垃圾文章,很是郁闷。搞了半天,找到一篇文章,说是jQuery自身append函数的问题,这个函数自己带类似HTML解析和分析的语句,基本的html没问题,碰到链接或者未完全关闭的标签或者是自定义的标签,jQuery就死活认不出来。不知道是否真的如此,手头的js库是压缩版,太晚了头也昏昏沉沉不想再去看劳什子源代码了。直接自己Create一个a标签的元素插入进去好了,这样搞:
$(document.createElement(‘a')).attr({"href":"#", "id": ‘#mylink'}).appendTo("#test");
然后给这个链接附上内容:
$(‘#mylink').text("test");
哎,累不累啊。不管了,睡觉了,明天有空看看jQuery的源代码是怎么写的吧。
- jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
- 解决jQuery使用append添加的元素事件无效的问题
- jquery append与appendTo方法比较
- jquery 追加元素append、prepend、before、after用法与区别分析
- jquery append 动态添加的元素事件on 不起作用的解决方案
- jQuery使用append在html元素后同时添加多项内容的方法
- 解决Jquery向页面append新元素之后事件的绑定问题
- jQuery中appendTo()方法用法实例
- jQuery中append()方法用法实例
- JS实现jQuery的append功能
相关文章
jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】
这篇文章主要介绍了jQuery实现带延时功能的水平多级菜单效果,可实现响应鼠标事件延时展示菜单的功能,涉及jQuery结合时间函数动态操作页面元素属性的相关技巧,需要的朋友可以参考下2016-09-09jQuery html表格排序插件tablesorter使用方法详解
这篇文章主要为大家详细介绍了jQuery html表格排序插件tablesorter的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-02-02CSS3 media queries结合jQuery实现响应式导航
这篇文章主要为大家详细介绍了CSS3 media queries结合jQuery实现响应式导航,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-09-09jQuery UI工具提示框部件Tooltip Widget
这篇文章介绍了jQuery UI工具提示框部件Tooltip Widget,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-06-06jquery easyui 结合jsp简单展现table数据示例
这篇文章主要介绍了jquery easyui 结合jsp简单展现table数据,需要的朋友可以参考下2014-04-04jquery.cookie.js实现用户登录保存密码功能的方法
这篇文章主要介绍了jquery.cookie.js实现用户登录保存密码功能的方法,结合实例形式详细分析了jquery.cookie.js插件操作cookie实现保存用户登录信息的相关技巧,需要的朋友可以参考下2016-04-04
最新评论