我有两个AJAX函数,一个指向编辑MYSQL表的文件的链接,另一个将新内容加载到<div>
没有触发加载新数据的功能。
此函数链接到名为clear_tasks.php
的页面,TRUNCATE
是我数据库中的表。
function clear_tasks(){
var xmlhttp;
if( window.XMLHttpRequest ){
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject( 'Microsoft.XMLHTTP' );
}
xmlhttp.open('GET', 'script_files/clear_tasks.php', true);
xmlhttp.send();
}
下一个函数链接到一个名为task_info.php
的页面,echo
是所有表条目的列表。
function load_content_from_file( div_id, url ){
var xmlhttp;
if( window.XMLHttpRequest ){
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject( 'Microsoft.XMLHTTP' );
}
xmlhttp.onreadystatechange = function(){
if( xmlhttp.readyState == 4 && xmlhttp.status == 200 ){
document.getElementById(div_id).innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open('GET', url, true);
xmlhttp.send();
}
应触发这些事件的<div>
如下所示:
<div onClick="clear_tasks(); load_content_from_file('task_list', 'script_files/task_info.php');">Clear Tasks</div>
load_content_from_file()
函数使用两个参数:div_id
,其中应加载来自task_info.php
的内容的div,以及url
,其当然是源文件本身(task_info.php
{1}})
load_content_from_file()
函数未被触发,我必须刷新页面以查看新内容(我在load_content_from_file()
函数中使用$(document).ready()
。
为什么load_content_from_file()
函数没有被触发?我曾尝试使用setInterval()
和setTimeout()
函数,但无济于事。
答案 0 :(得分:0)
我已经检查了你自己的代码。当我点击“清除任务”时,'fired clear_tasks()'
和'load_content_from_file'
都会触发。
问题可能在'script_files/task_info.php'
的路径上,或者在task_info.php
内部,该{{1}}应该响应'task_list'div的数据。
因为如果我通过'task_info.php'返回简单文本,那么文本会顺利地附加到'task_list'div中。