使用ajax加载的页面中包含的javascript的解决方法
使用ajax加载的页面中包含的javascript的解决方法
发布时间:2016-12-29 来源:查字典编辑
摘要:1、【使用iframe】在需要加载的页面中添加一个iframe,如下复制代码代码如下:onload中添加你所要调用的函数,如果加载的页面在弹...

1、【使用iframe】

在需要加载的页面中添加一个iframe,如下

复制代码 代码如下:

<iframe onload="javascript: close_ticket_onload()"></iframe>

onload中添加你所要调用的函数,如果加载的页面在弹出层中,此函数需要放在弹出此层的父页面!

2、【使用eval】

如果使用innerHTML填充XMLHttp取得的数据。如:xxx.innerHTML=XMLHttp取得的数据

这样是不会执行JS,添加eval方法就ok了:如:xxx.innerHTML=eval(返XMLHttp取得的数据);

以下是补充内容:

举例:用Microsoft.XMLHttp获取数据后,数据为alert('测试')

xxx.innerHTML=返回的数据(也就是alert('测试'))

是不会执行的,因为javascript已经在页面加载的时候执行完了.在往里面加代码,他就不会再执行了.

开始的时候没找到方法,只能用<iframe>来代替.但其实我觉得已经不是我原来想要的"不刷新更新数据"的效果了..不过还是能用.

后来还是没有放弃,再到google搜索一次,居然搜索出CSDN上的一篇贴子

xxx.innerHTML=eval(返回的数据); 如:alert('测试')

一试居然成功了,真是高兴啊..真是太感谢这位高手了

于是搜索了关于Eval的用法

Javascript中Eval函数的使用

简介:等你需要动态创建语句的时候,你将会发现它非常独特的作用,上网看了半天,找到些零散的内容,想来也算非常全面的了,全部把它收集起来放在这里以备后用,也供大家讨论学习使用。

【eval()函数】

JavaScript有许多小窍门来使编程更加容易。

其中之一就是eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它。

举个小例子:

var the_unevaled_answer = "2 + 3";

var the_evaled_answer = eval("2 + 3");

alert("the un-evaled answer is " + the_unevaled_answer + " and the evaled answer is " + the_evaled_answer);

如果你运行这段eval程序, 你将会看到在JavaScript里字符串"2 + 3"实际上被执行了。

所以当你把the_evaled_answer的值设成 eval("2 + 3")时, JavaScript将会明白并把2和3的和返回给the_evaled_answer。

这个看起来似乎有点傻,其实可以做出很有趣的事。比如使用eval你可以根据用户的输入直接创建函数。

附上测试代码:

复制代码 代码如下:

<script language=javascript>

function check_user_exists(form){

u_name=form.u_name.value;

if (u_name==null||u_name==''){

alert("请您输入用户名");

return false;

}

infoBoard=document.getElementById("checkInfo");

infoBoard.innerText='查询中...';

myurl="http://localhost/ajax/form1.asp"

retCode=openUrl(myurl);

infoBoard.innerHTML=eval(retCode);

return;

}

function openUrl(url){

var objxml=new ActiveXObject("Microsoft.XMLHttp")

objxml.open("GET",url,false);

objxml.send();

retInfo=objxml.responseText;

if (objxml.status=="200"){

return retInfo;

}

else{

return "-2";

}

}

</script>

<form name=form1 action="XXXX.asp" method="post">

<input type=text name=u_name><span id="checkInfo"></span><input type=button name=checkuser value="检测用户是否存

在">

</form>

form1.asp的内容为

复制代码 代码如下:

alert('内容仅是测试,所以写简单点')

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新AJAX相关学习
热门AJAX相关学习
编程开发子分类