IE8使用jQuery .html()时会追加
IE8 is appending when using jQuery .html()
我和我的同事花了大约一个小时来研究这个问题,但我们还是没有弄清楚。这在Chrome和Firefox中工作得很好。这基本上是它的简化版本:
http://jsbin.com/osebuc它在这个测试用例中工作得很好,但在IE8中,我们的实际东西是附加HTML。实际上,我们在代码中只有$('.panda').html(someHtml)
,但在IE中,它每次都附加HTML,而不是替换HTML。
我们也尝试了$('.panda').empty().html(someHtml)
在IE中,但随后IE似乎"失去了跟踪".panda
和做console.log($('.panda').length)
返回1
,然后另一个按钮点击(回到原来的HTML),返回0
。
还有人看到这个吗?有人知道为什么会这样吗?
原因:
我的同事和我正试图使一些表单看起来更漂亮(测试版),而不触及原始的HTML(我们不能),但有一种方法可以回到原始的表单(经典),如果他们点击一个按钮。为此,我们将原始HTML缓存到var中,然后构建新的测试版HTML,将其保存到var中,然后在toggle中执行上述示例。
我刚刚遇到了同样的问题:IE7/IE8中的.html()
正在追加。
我通过以下操作对它进行了排序:
$('panda').html("").html(someHtml);
基本上,手动将其设置为空白,然后添加来自ajax调用的代码。
虽然我个人更喜欢jQuery,但您尝试过普通的javascript吗?
$('.panda')[0].innerHTML = "";
$('.panda')[0].innerHTML = "some html";
也有同样的问题。确保你的HTML是有效的。我有一个不同的开始和结束标签^^
相关文章:
- 使用jQuery'生成输入字段;s追加
- jQuery动态使用.append()添加输入,但发布表单不是追加数据
- Jquery DataTables 不适用于使用 javascript 追加 html
- 如何在不导致 HTML 表格失真的情况下正确使用追加
- 这两种使用 jQuery 追加 DOM 元素的方法有什么不同
- 使用 Cheerio 追加节点的同级节点
- 使用javascript追加到DOM
- 使用PHP上传图像并使用JQuery进行追加
- 使用document.createElement追加lt IE
- 如何使用串联匿名函数追加到字符串
- 使用用户输入追加表行
- 无法与使用 jquery 追加添加的 dom 对象进行交互
- 如何使用 SetTimeout,根据动态追加时间删除动态追加的元素
- 在 Java 脚本中使用追加时 HTML 标记不起作用,但在执行硬编码时 html 代码工作正常
- JS追加后无法使用点击功能
- Angular 在使用 jq 追加方法时是否编译指令
- 追加方法使用 from in a Jquery $getJSON
- 如何使用 JQuery 切换 DIV 后删除追加的元素
- 使用 jQuery,查找所有选择并将索引值追加为选项
- 如何使用 JavaScript 或 jQuery 导出 HTML 表并追加为现有 Excel 中的工作表