使用ajax加载的页面中包含的javascript的解决方法

情深話未曾講

情深話未曾講

2016-02-19 10:25

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的使用ajax加载的页面中包含的javascript的解决方法,手机电脑控们准备好了吗?一起看过来吧!
1、
在需要加载的页面中添加一个iframe,如下

代码如下:

iframe style="display:none" onload="javascript: close_ticket_onload()"/iframe

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

2、
如果使用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函数的使用 

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

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_namespan id="checkInfo" style="display:none"/spaninput type=button name=checkuser value="检测用户是否存

在" onClick="check_user_exists(this.form);"
/form


form1.asp的内容为
代码如下:

alert('内容仅是测试,所以写简单点')
展开更多 50%)
分享

猜你喜欢

使用ajax加载的页面中包含的javascript的解决方法

Web开发
使用ajax加载的页面中包含的javascript的解决方法

Ajax获取页面被缓存的解决方法

Web开发
Ajax获取页面被缓存的解决方法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

FlashFXP加载慢的解决方法

服务器
FlashFXP加载慢的解决方法

ajax乱码解决方法

Web开发
ajax乱码解决方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

AJAX中文乱码PHP中完美解决方法

Web开发
AJAX中文乱码PHP中完美解决方法

在html页面中包含静态或动态页面方法

Web开发
在html页面中包含静态或动态页面方法

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

SQL Server导入、导出、备份数据方法

SQL Server导入、导出、备份数据方法

MySQL 数据库的临时文件究竟储存在哪里

MySQL 数据库的临时文件究竟储存在哪里
下拉加载更多内容 ↓