Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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
Javascript 一个Ajax POST请求的多个响应_Javascript_Jquery_Ajax_Twitter Bootstrap_Bootstrap Modal - Fatal编程技术网

Javascript 一个Ajax POST请求的多个响应

Javascript 一个Ajax POST请求的多个响应,javascript,jquery,ajax,twitter-bootstrap,bootstrap-modal,Javascript,Jquery,Ajax,Twitter Bootstrap,Bootstrap Modal,我有一个按钮,可以打开一个引导模式,并使用ajax GET请求将一些数据从json文件加载到模式体中。我在模式中添加了第二个按钮(OK),以增加一个数字(在json文件中的对象内部),并通过ajax post请求将对象作为字符串发布到php文件(以更新json文件并打印数字)。 问题是,当我第二次单击OK时,我得到了两个响应。当我第三次单击OK时,我得到了3个响应,以此类推,响应是递增的。 这就像有一个计数器,可以计算模态打开的时间。 即使我没有单击“确定”并仅关闭模式,此计数器也会增加,当我单

我有一个按钮,可以打开一个引导模式,并使用ajax GET请求将一些数据从json文件加载到
模式体中。我在模式中添加了第二个按钮(OK),以增加一个数字(在json文件中的对象内部),并通过ajax post请求将对象作为字符串发布到php文件(以更新json文件并打印数字)。
问题是,当我第二次单击OK时,我得到了两个响应。当我第三次单击OK时,我得到了3个响应,以此类推,响应是递增的。
这就像有一个计数器,可以计算模态打开的时间。
即使我没有单击“确定”并仅关闭模式,此计数器也会增加,当我单击“确定”时,响应会启动,其数量等于我打开模式的次数。
我认为ajax请求应该负责,但是我删除了它,并且仍然得到了多个响应,正如我从控制台看到的那样。
所以我认为模态和我添加的按钮有问题,但我不知道是什么

以下是模式的html:

<!-- Modal 1 -->
 <div class="modal fade" id="Modal1" role="dialog">
    <div class="modal-dialog">

        <!-- Modal contents-->
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">&times;</button>
                <h4 class="modal-title">Are you sure?</h4>
            </div>
            <div class="modal-body">
                <p id="mBody1"></p>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default ok1" data-dismiss="modal">OK</button><button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
        </div>

    </div>
</div
$('.dr1').click(function(){
    $('#Modal1').modal();
    $('.modal-header, .modal-footer').css("border-color", $(this).css("background-color"));
    $.ajax({
        type: 'GET',
        url: '/resources/doctors.json',
        dataType: 'json',
        success: function(doctors) {
            $('#mBody1').html('You are requisting a reservation for<br/>Dr. ' +doctors[0].name+ '<br/>Your number is ' +(doctors[0].nNo+1));
            $('.ok1').click(function() {
                doctors[0].nNo=doctors[0].nNo+1;
                console.log(doctors);
                $.ajax({
                    type: 'POST',
                    url: '/resources/newTic.php',
                    data: {data: JSON.stringify(doctors), drNo: "1" },
                    dataType: 'json',
                    success: function(msg) {
                        console.log(msg);
                    }
                });
            });
        }
    });
});

&时代;
你确定吗?

奥克洛斯
这是因为在每个
.success
中,您都在添加另一个
$('.ok1')。单击(function(){
-您应该研究jQuery文档,看看如何在添加它之前删除单击事件是的,谢谢@JaromandaX我添加了
$('.ok1')。关闭(“单击”)
的末尾。单击
事件,它就工作了!很抱歉,在
成功
函数的末尾它不工作,我将它放在
$('.ok1')中。单击()
事件函数如果我关闭模式并重新打开它,它会生成多个响应。因此我必须将它放在
$('.dr1')的末尾。单击()
事件函数。仍然有问题!它有时不会增加数字,特别是当我只是切换模式而没有单击“确定”时。如果我这样做(切换模式)一段时间,我会再次收到多个响应:(