日期:2014-05-16  浏览次数:20592 次

打开页面时不加载AJAX代码,当页面中数据改变时,再加载
页面中有一段AJAX代码,第次打开页面时都加载,能不能当页面中数据改变时再加载AJAX代码 ?????

------解决方案--------------------
什么数据改变?
------解决方案--------------------
那你得先用动态页读取是否改变的标志位赋值给js变量,然后js判断是否改变,改变就启动ajax

要不无法实现,ajax是客户端的,只能请求服务器得到是否改变了
------解决方案--------------------
引用:
页面中有一段AJAX代码,第次打开页面时都加载,能不能当页面中数据改变时再加载AJAX代码 ?????

楼主你说的加载的是AJAX请求返回的数据吧,而你不希望一打开时就加载返回的数据,想根据页面中数据变化后再返回,是吧。

这样的话,你只要控制一下JS里发起AJAX请求的部分,让它别直接发请求,在你数据改变时再调用它就行了。

即使是象你说的在代码层级上使AJAX一开始不加载,也是可以的。把这些代码放在字串变量里,它就不是实际的AJAX代码,当有需要时再把字串中的指令内容实体化一下,就出来真正的AJAX指令了。但是这样实在没什么必要。你早晚要用到它,而且它们也不会占用多少资源,就算不用也用不着节约到这程度。按我中间说的,改变一下JS处理流程就行了。
------解决方案--------------------
你的代码 不要 这样写
$(function(){


})

或者是document.onReady()
<body onload="init()"></body>

上面 3种都是在页面初始化完成后立即执行的

你这样写

<select onchange="你的JS方法 ">
 <option value="1">1</option>
</select >
------解决方案--------------------
你把js和页面分开啊,需要请求的时候在调js嘛