第二个AJAX调用一个div元素不起作用

时间:2014-07-02 11:09:05

标签: jquery ajax

我有一个div元素#profInfo和两个按钮#profEdit和#profEditDone。第一个AJAX调用正在运行,第二个调用没有。似乎无法确定问题。

jQuery(
    function() {
        $("#profEdit").click(function() {
            $("#profInfo").load("profile_edit_info.php");
        });
    },
    function() {
        $("#profEditDone").click(function() {
            $("#profInfo").load("profile_info.php");
        });
    }
);

1 个答案:

答案 0 :(得分:0)

jQuery函数在文档就绪事件上执行一个函数,而不是两个:

jQuery(
    function() {
        $("#profEdit").click(function() {
            $("#profInfo").load("profile_edit_info.php");
        });
        $("#profEditDone").click(function() {
            $("#profInfo").load("profile_info.php");
        });
    }
);

有可能只是忽略了第二个函数,因为它在执行第一个函数后并不期望第二个函数参数。另请注意,如果这些#profEdit#profEditDone元素由于这些AJAX操作而以任何方式被替换,那么您的点击绑定将会丢失。如果发生这种情况,您也会想要使用.on()并绑定到公共父元素:

jQuery(
    function() {
        $(document).on("click", "#profEdit", function() {
            $("#profInfo").load("profile_edit_info.php");
        });
        $(document).on("click", "#profEditDone", function() {
            $("#profInfo").load("profile_info.php");
        });
    }
);