JQuery的html(data)方法与<script>脚本块的解决方法

 更新时间:2010年03月09日 21:23:59   作者:  
在使用Jquery的html(data)方法执行写数据到Dom元素时遇到一个问题:在data参数中包含script脚本块的时候,html(data)方法的执行结果与预期不符
“今天才注意到jQuery(...).html()方法返回的HTML会过滤掉所有的<script>块,但有时候,特别是在AJAX应用中,常常是需要保留HTML中的<script>块的,比如局部更新含脚本的内容,此时切忌不要用html()来读写HTML,还是要老老实实用elem.innerHTML。今天因为这个问题浪费了1个小时,特此给大家提个醒。”

  经过测试发现,新版本(1.3.2之后的,之前版本未考证过)的jQuery(...).html()方法已经不存在该问题(html()方法是一个读Dom元素数据的操作),但是当用html(data)方法写数据到Dom元素并且data参数中包含script脚本时,又出现了异常现象:在Firefox(我用的3.6)浏览器下执行上述操作,data参数里面的script脚本会自动运行,引起页面破相、异常等错误,比如我遇到的问题就是:在script中存在document.write方法时,在执行完html(data)操作后整个页面的原有的dom元素都消失了,只剩下document.write()方法的执行结果,引起了页面破相;具体原因待讨论,最后还是用elem.innerHTML=data这种方式解决了这个问题,特此标记。

相关文章

  • jQuery原生的动画效果

    jQuery原生的动画效果

    这篇文章主要介绍了jQuery原生的动画效果的相关资料,需要的朋友可以参考下
    2015-07-07
  • jquery入门——事件机制之事件中的冒泡现象示例解释

    jquery入门——事件机制之事件中的冒泡现象示例解释

    事件被触发后被分为两个阶段,一个是捕获(Capture),另一个是冒泡(Bubbing),但大多浏览器并不是都支持捕获阶段,因此事件被触发后,往往执行冒泡过程,感兴趣的朋友可以了解下,或许对你学习事件机制有所帮助
    2013-02-02
  • jquery实现点击变换导航样式的方法

    jquery实现点击变换导航样式的方法

    这篇文章主要介绍了jquery实现点击变换导航样式的方法,可实现点击导航菜单选项时动态变换对应选中项样式的功能,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • BootStrap按钮标签及基本样式

    BootStrap按钮标签及基本样式

    这篇文章主要介绍了BootStrap按钮标签及基本样式的相关资料,基本样式包括颜色大小方面的知识,对bootstrap按钮相关知识感兴趣的朋友一起看看吧
    2016-11-11
  • Jquery实现多选下拉列表左右移动

    Jquery实现多选下拉列表左右移动

    这篇文章主要为大家详细介绍了Jquery实现多选下拉列表左右移动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • javascript异步处理与Jquery deferred对象用法总结

    javascript异步处理与Jquery deferred对象用法总结

    这篇文章主要介绍了javascript异步处理与Jquery deferred对象用法,结合实例形式总结分析了jQuery异步请求处理相关操作技巧,需要的朋友可以参考下
    2019-06-06
  • jquery.Callbacks的实现详解

    jquery.Callbacks的实现详解

    这篇文章主要给大家介绍的是jQuery.Callback()的实现,这个函数常见的应用场景是事件触发机制,也就是设计模式中的观察者(发布、订阅机制),目前Callbacks对象用于queue、ajax、Deferred对象中,下面通过这篇文章来详细看看关于jquery.Callbacks实现的介绍吧。
    2016-11-11
  • 解析jquery获取父窗口的元素

    解析jquery获取父窗口的元素

    本篇文章是对jquery获取父窗口元素的实现方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • jQuery插件开发发送短信倒计时功能代码

    jQuery插件开发发送短信倒计时功能代码

    最近项目开发中遇到这样的功能:1.点击按钮的时候,可以进行倒计时,倒计时自定义.2.当接收短信失败后,倒计时停止,可点击重新发送短信.3.点击的元素支持一般标签和input标签。看似很复杂其实实现代码很简单,下面小编给大家分享下实现代码,需要的朋友参考下吧
    2017-05-05
  • jquery自动填充勾选框即把勾选框打上true

    jquery自动填充勾选框即把勾选框打上true

    jquery自动填充勾选框,即把勾选框打上(true),然后通过ajax方式获得勾选项列表,再把列表内的选项打上
    2014-03-03

最新评论