Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Ajax复制JavaScript函数_Javascript_Jquery_Ajax_Function - Fatal编程技术网

使用Ajax复制JavaScript函数

使用Ajax复制JavaScript函数,javascript,jquery,ajax,function,Javascript,Jquery,Ajax,Function,我有一个启动模式窗口打开/关闭的页面。modals的内容来自AJAX,如HTML。假设我在模式中有一个按钮: <button id="myBtn"> 将加载到模式中的HTML包含按钮和单击()绑定 当模式被隐藏并再次显示时,旧的内容会被一次又一次地覆盖。如果您希望函数只在应该使用的时候出现一次,那么使用JQuery 你希望发生什么?这并不明显,因为你还没有解释你的目标。你能创建一个吗?我希望它只运行一次。当引导模式通过AJAX打开时,旧的DOM被替换了吗?或者你是如何加载它的?这可

我有一个启动模式窗口打开/关闭的页面。modals的内容来自AJAX,如HTML。假设我在模式中有一个按钮:

<button id="myBtn">
将加载到模式中的HTML包含
按钮
单击()
绑定


当模式被隐藏并再次显示时,旧的内容会被一次又一次地覆盖。

如果您希望函数只在应该使用的时候出现一次,那么使用JQuery


你希望发生什么?这并不明显,因为你还没有解释你的目标。你能创建一个吗?我希望它只运行一次。当引导模式通过AJAX打开时,旧的DOM被替换了吗?或者你是如何加载它的?这可能就是我们需要看到的代码。我们需要ajax调用,我们面前的是一个绑定,如果每次调用时都要重新绑定,这就是问题所在,请将绑定调用移到ajax成功回调之外。根据OP,事件被绑定了不止一次,因此,您将有几个
。一个
被绑定,这意味着它仍将执行多次。是的,就像@4castle所说的。
<script>
    $("#myBtn").click(function () {
        // do something
    });
</script>
$('#myModal').on('shown.bs.modal', function (event) {
    $('#myModal').html('Loading...');

    $.ajax({
        type: "POST",
        dataType: "html",
        url: "ajaxHandler.php",
        data: (myData),
        success: function(data){
            $('#myModal').html(data);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            // handle error
            $('#myModal').modal.modal('hide');
        }
    });
});
$( "#foo" ).one( "click", function() {
  alert( "This will be displayed only once." );
});