0

我正在创建一个页面,该页面在 div 中加载其他页面,无需刷新,作为模板。但是JQuery-Ajax请求设计的组件不与我用JQuery创建的任何功能交互,就好像这些组件的选择器不存在一样。

下面我正在创建一个函数来加载模板中心的页面:

function carregaUrl2(url) {

    var data = $("form").serialize();

    $.ajax({
        type: "POST",
        url: url,
        data: data
    }).done(function(data) {
        $("#divCentral").html(data);
    });

}

下面的功能测试,只是为了和JQuery-Ajax请求创建的组件交互:

$(document).ready(function() {

    $("form").change(function(e) {
        alert("SUBMIT FORM");
        e.preventDefault();

        return false;

    });

    $("select").click(function() {
        alert("INPUT CLICK");
    });

});

我一直在寻找解决方案,但一直很难!

请问你能帮帮我吗?

4

1 回答 1

2

当您的 ready 函数触发时,这些元素不存在。您需要改用委托,因为它允许绑定到注册处理程序后创建的对象。

$("#divCentral").on("click", "select", function() {
    alert("INPUT CLICK");
});

.on() | jQuery API 文档

于 2013-07-15T17:24:33.103 回答