Javascript 如何在ajax页面中运行脚本
在单击链接并发送ajax调用以获取响应时,我能够获得正确的响应,但响应页面中的脚本标记不起作用。如何让它运行 这是HTML页面Javascript 如何在ajax页面中运行脚本,javascript,html,ajax,mootools,Javascript,Html,Ajax,Mootools,在单击链接并发送ajax调用以获取响应时,我能够获得正确的响应,但响应页面中的脚本标记不起作用。如何让它运行 这是HTML页面 <HTML> <HEAD> <link rel="stylesheet" type="text/css" href="css/global.css"> <script type="text/javascript" src="js/ajaxgetter.js"></script> <script type
<HTML>
<HEAD>
<link rel="stylesheet" type="text/css" href="css/global.css">
<script type="text/javascript" src="js/ajaxgetter.js"></script>
<script type="text/javascript" src="js/mootools.js"></script>
</HEAD>
<BODY>
<h1>ajax block container</h1>
<div id="container">
<div id="tab_wrapper">
<ul id="tab_list" >
<li>
<a href="#" id="firstelement" onclick="ajaxenabled('elements/firstelement.html','firstelement','content_tab')">Number 1 </a>
</li>
<li>
<a href="#" id="secondelement" onclick="ajaxenabled('elements/secondelement.html','secondelement','content_tab')">Number 2</a>
<br/><br/><br/>
</li>
</ul>
</div>
<br/><br/><br/><br/><br/><br/>
<div id="content_tab">
</div>
</div>
</BODY>
</HTML>
响应页面“firstelement.html”
具有ajax调用的第一个元素
警报(“测试简单功能”);
firstelement.html中的脚本选项卡中出现的警报不会触发,您应该将该脚本从html文件中移动到.js文件中,并在成功完成ajax调用后调用该脚本。 您的HTML文件将是:
<HTML>
<HEAD>
<link rel="stylesheet" type="text/css" href="css/global.css">
<script type="text/javascript" src="js/ajaxgetter.js"></script>
<script type="text/javascript" src="js/mootools.js"></script>
<script type="text/javascript" src="js/YOUR_SCRIPT_FILE_HERE.js"></script>
</HEAD>
<BODY>
<h1>ajax block container</h1>
.
.
.
然后在html文件中更新loadpage方法,如下所示:
function loadpage(page_request,param,id){
var getblock=document.getElementById(id);
if(page_request.status==200) {
getblock.style.display='block';
getblock.innerHTML=page_request.responseText;
afterAjaxSuccess(); //updated line here
if(param!=null)
{
//alert("showed");
}
}
}
您的HTML页面将变成
<h1>First Element having ajax call</h1>
具有ajax调用的第一个元素
没有任何脚本我只使用mootools,如果在选项中设置了更新,它将评估返回页面中的所有脚本标记,并替换元素中的html。您能演示如何实现它吗?对于答案,我将尝试让您知道它根据我拥有的列表数量多次发出警报是,如果进行多个ajax调用,它将多次触发该脚本。考虑在加载整个ListIs之后调用脚本中的方法。运行MOOTooS,但不要使用请求类。请求有一个特殊选项
evalscript:true | false
——您可以使用它。
<script type="text/javascript">
alert("testing the simple function");
</script>
function afterAjaxSuccess(){
alert("testing the simple function");
}
function loadpage(page_request,param,id){
var getblock=document.getElementById(id);
if(page_request.status==200) {
getblock.style.display='block';
getblock.innerHTML=page_request.responseText;
afterAjaxSuccess(); //updated line here
if(param!=null)
{
//alert("showed");
}
}
<h1>First Element having ajax call</h1>