建站极客
网络编程 AJAX相关 正文
ajax中指定innerHTML时如何应用其中的SCRIPT的研究
所属分类:
网络编程 / AJAX相关
阅读数:
1003
收藏 0
赞 0
分享
其实这篇文章与ajax无关,但因为是ajax项目中遇到的问题.所以.... innerHTML赋值操作时,其中的script并不会被运行,可以使用正则表达式提取script,然后eval(script); 示例代码 <html> <head> <script type="text/javascript"> <!-- function load1(){ var Content= document.getElementById("Content"); alert("load1"); } function load2(){ var Content= document.getElementById("Content"); Content.innerHTML="load2:<script>load1();<\/script>"; } function load3(){ var Content= document.getElementById("Content"); //为什么要Javascript必须在有效的Text标签之后,又要谈到JS在IE和FireFox中的区别了.在script脚本块 //之前如果没有有效的Text标签,IE就会出错.但FireFox可以正常运行,神啊,救救IE吧 var str="<a>Javascript必须在有效的Text标签之后</a><script type=\"text/javascript\">load1();<\/script>"; Content.innerHTML=str; var regExp=/<script.*>(.*)<\/script>/gi; if(regExp.test(Content.innerHTML)){ eval(RegExp.$1); } ////以下代码是为了匹配多个脚本块而设置的,但是非常不幸的是不能运用在IE中 ////只能运行于FireFox,因为够用了,所以没有写下去有兴趣的可以完成它,偶JS没学好呀 //var matchArray=str.match(regExp); //if(matchArray){ // for(var i=0;i<matchArray.length;i++){ // if(regExp.test(matchArray[i])){ // alert(RegExp.$1); // } // else{ // alert(matchArray[i]); // } // } //} } //--> </script> </head> <body> <div id="Content"> </div> <input type="button" onclick="javascript:load1();" value="load1"/> <input type="button" onclick="javascript:load2();" value="load2"/> <input type="button" onclick="javascript:load3();" value="load3"/> </body> </html> [说明] load1 当然可以正常运行 load2中 Content.innerHTML赋值时,其中的Script并不会被运行 load3中 取得innerHTML中的脚本块出来,并eval之,方可正常运行 也许谁还有更好的办法,please mail to me blackant@tt88.cn
理解jquery ajax中的datatype属性选项值 jquery中ajax的dataType属性用于指定服务器返回的数据类型,如果不指定,jQuery 将自动根据HTTP包MIME信息来智能判断,如果datatype选项不填写的话,会将返回的数据当成字符串处理。
评论 0
收藏 0
赞 0
分享
通过Ajax两种方式讲解Struts2接收数组表单的方法 使用struts2表单传值,可以传一个或者是作为一个对象的各个属性传,都非常灵活便捷。但是如果我们需要传一个数组并希望struts正确接收,该怎么处理呢?接下来,通过本文给大家介绍通过Ajax两种方式讲解Struts2接收数组表单的方法,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
基于Jquery.history解决ajax的前进后退问题 本文主要给大家介绍基于Jquery.history解决ajax的前进后退问题,涉及到jquery前进后退相关方面的知识,本文内容经典,非常具有参考价值,特此把jquery前进后退相关知识分享在脚本之家网站供大家参考
评论 0
收藏 0
赞 0
分享
谈谈你对aja的理解(一、二) Ajax是Asynchronous Javascript And XML的缩写,其作用通过Ajax可以使用Javascript语句来调用XMLHttpRequest对象,直接与服务器进行通讯,可以在不重载页面的情况下与服务器交换数据。
评论 0
收藏 0
赞 0
分享
关于ajax对象一些常用属性、事件和方法大小写比较常见的问题总结 最近比较空闲,于是抽个时间整理些关于ajax方法的东东。在项目中经常发现ajax板块好多问题都是属性,方法,事件大小写不区分问题,最终导致了程序运行出现麻烦,下面给大家介绍关于ajax对象一些常用属性、事件和方法大小写比较常见的问题总结
评论 0
收藏 0
赞 0
分享
Ajax请求session失效该如何解决 HTML + Servlet + Filter + jQuery 一般来说我们的项目都有登录过滤器,一般请求足以搞定。但是AJAX却是例外的,所以解决方法是设置响应为session失效。
评论 0
收藏 0
赞 0
分享
编写轻量ajax组件02--浅析AjaxPro ajaxpro虽然是一个比较老的组件,不过实现思想和源码还是很有借鉴价值的。接下来通过本篇文章给大家介绍编写轻量ajax组件02--浅析AjaxPro,感兴趣的朋友可以参考下
评论 0
收藏 0
赞 0
分享
查看更多