第二个ajax函数在被调用时不会触发

时间:2014-01-26 11:51:06

标签: javascript php jquery ajax

我有两个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()函数,但无济于事。

1 个答案:

答案 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中。