我使用arte for jquery每隔10秒通过ajax调用一个页面。它调用我的一个php页面,php页面查询数据库并吐出html代码。在那个html代码中有一些jquery调用。问题是那些调用不起作用,除非我在被调用的php文件中包含jquery脚本。但这会导致调用php文件的主页上的jquery代码出现问题。基本上我怎样才能在从通过ajax调用的页面返回工作的html中获取jquery?这是调用php文件的代码:
$(document).ready(function(){
$.arte({'ajax_url':'ajax_list.php','on_success':update_field}).start();
$.arte().set('time',10000);
});
function update_field(data){
$("#glist").html(data);
}
所以ajax_list.php回显了一个html输出。在html输出里面是一些jquery调用。除非我在ajax_list.php中包含jquery库,否则这些都不起作用。但是这会导致同一页面上ajax_list.php之外的其他jquery调用出现问题。有没有办法在主页调用ajax_list.php中包含jquery库并在返回结果中使用jquery代码?希望这是有道理的。
答案 0 :(得分:0)
除非arte库正在做一些非常深刻的魔法,否则ajax_list.php返回的html中的内联JS永远不会触发。通过JS动态输入DOM的JS不会被评估。
答案 1 :(得分:0)
是否可以将返回的函数作为函数写入原始页面,将数据作为包含
的JSON对象返回HTML->'您的HTML',
DATA =>数组(元素或其他),
使用getJSON,将您的HTML设置为JSON数组中的JSON.HTML对象,并将JSON.DATA对象中的对象发送到您要执行的函数中?
答案 2 :(得分:0)
主要是我的问题是从ajax调用返回的数据中的thickbox代码。我发现解决了我的问题的链接是Thickbox on ajax generation