",用ajax怎么实现把当前的页面的替换成返回值并执行", "upDate": "2021-05-28T15:38:09+08:00" }

action返回字符串值是"",用ajax怎么实现把当前的页面的替换成返回值并执行

Anajian 2009-04-08 08:40:11
如题.着急啊
...全文
472 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Anajian 2009-04-23
  • 打赏
  • 举报
回复
a.js内容
document.write("aaaa");
b.js内容
document.write("bbbb");

html文件:
<head>
function chgJS(){
//ajax执行
//返回字符串jssrc="b.js"
$(“jsID”).innerHTML=jssrc;//这里不执行,
}
</head>
<body>
<table>
<tr><td id="jsID"><script type="text/javascript" src="a.js"></script></td></tr>
<tr><td><a href="#" onclick="chgJS()">下一页</a></td></tr>

</table>
</body>

html文件开始打开默认加载a.js内容。


--------
基本上就是上面的思路。
主要实现一个分页功能,我从后台把新闻生成JS列表,list_1.js,list_2.js
新闻列表页面html点击上一页下一页的时候,只替换对应页码的js就行。
fosjos 2009-04-21
  • 打赏
  • 举报
回复
b.js做了些什么事

如果页面独立的话,可以用frame嵌一下
Anajian 2009-04-21
  • 打赏
  • 举报
回复
我试了,很多方法
还是不行

希望js前辈,给指点一下.
Anajian 2009-04-10
  • 打赏
  • 举报
回复
继续等....
niuxinlong 2009-04-08
  • 打赏
  • 举报
回复
可以把<script src="a.js"></script>放到div中,

<div id="div_a"><script src="a.js"></script></div>
然后将返回的<script src="b.js"></script>展示在
id为div_a 的div中,这样返回值自然就把a.js替换了
Anajian 2009-04-08
  • 打赏
  • 举报
回复
js脚本:
<script type="text/javascript">
var pageNum=1;
var p=0;
var srcstr;
function list2Page(pageNum){
alert(pageNum);
var url="List2Page.action?pageNum="+pageNum;
var myAjax=new Ajax.Request(
url,
{method:"post",parameters:pageNum,onComplete:processResponse,asynchronous:true}
)
}
function processResponse(request){
var action=request.responseText.parseJSON();
$("total").innerHTML=action.total;
pageNum=action.pageNum;
$("pageNum").innerHTML=action.pageNum;
p=action.p;
$("p").innerHTML=action.p;
srcstr=action.listClasstwo;//这里srcstr得到"js/01list_2.js"
var scriptObj = document.body.createElement("script");
scriptObj.src = srcstr;
scriptObj.type = "text/javascript";
document.body.appendChild(scriptObj);



}

</script>

body里面:
<table width="512" height="19" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td id="listClasstwo"><script id="sptID" type="text/javascript" src="js/01list_1.js"></script></td>
</tr>
</table>


有劳了,请大家非费心!
Anajian 2009-04-08
  • 打赏
  • 举报
回复
是不是得把原来的a.js删除?
montao 2009-04-08
  • 打赏
  • 举报
回复
你ajax请求的时候返回js文件的文件名就OK了 不要返回这个内容 没用的!

返回文件名你可以自己来将这个JS文件引入


var scriptObj = document.createElement("script");
scriptObj.src = "youjsfile.js";
scriptObj.type = "text/javascript";
document.appendChild(scriptObj);
Anajian 2009-04-08
  • 打赏
  • 举报
回复
不对,楼上的方法是我尝试的第一种方式,
如果返回的是string,就可以,但是返回 <script src="b.js"> </script>
这样的就不行了,而且注意也和那个ajax.updater可执行脚本内容不一样
这里没有脚本内容,只是加载脚本文件.

81,077

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧