Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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调用有时失败,有时有效?_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript Ajax调用有时失败,有时有效?

Javascript Ajax调用有时失败,有时有效?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个应用程序,它通过ajax输出一个表,表的每一行都有一个列/输入字段作为日程日期。输入计划日期后,单击该行中的更新按钮并触发我的第二个ajax调用 我遇到的问题是,当选择日期并单击更新按钮时,系统有时工作,有时不工作。。看看我的代码-我希望有人能给我一些启示 第一个Ajax调用: $('.datepicker').datepicker({ todayHighlight:'TRUE', autoclose: true,

我有一个应用程序,它通过ajax输出一个表,表的每一行都有一个列/输入字段作为日程日期。输入计划日期后,单击该行中的更新按钮并触发我的第二个ajax调用

我遇到的问题是,当选择日期并单击更新按钮时,系统有时工作,有时不工作。。看看我的代码-我希望有人能给我一些启示

第一个Ajax调用:

$('.datepicker').datepicker({
                todayHighlight:'TRUE',
                autoclose: true,
            })

    $.post('assets/ajax/calldata/newords.php', function(data) {
        $('#newords').html(data)
        $('.datepicker').datepicker({
                todayHighlight:'TRUE',
                autoclose: true,
            })
    });
$(document).on('click', 'button.markScheduled', function(e) {

        var ordid = $(this).attr('ordid');
        var scheduledate = $('input.scheduleDate').val();

        $.ajax({
            url: "assets/ajax/order.php",
            type: "POST",
            data: {ordid: ordid,date: scheduledate},
            success: function(result){

            },
            error: function(exception){
                alert('Exception:' +exception);
            }
        });

        $.post('assets/ajax/calldata/newords.php', function(data) {
            $('#newords').html(data)
            $('.datepicker').datepicker({
                todayHighlight:'TRUE',
                autoclose: true,
            })
        });

    });
第一次Ajax调用的输出

<table>

  <thead>
  <tr>
    <td>#<td>
    <td>Account</td>
    <td>Date to Scedule</td>
    <td>Action</td>
  <tr>
  </thead>

  <tbody>
    <tr>
      <td>1</td>
      <td>Test Account</td>
      <td>
          <input class="datepicker form-control" type="text" id="datetoprint" name="datepicker" data-date-format="dd/mm/yyyy" placeholder="dd/mm/yyyy">
      </td>
      <td>
          <button class="btn btn-default markScheduled" type="button" id="markScheduled" ordid="56">Scheduled</button>
      </td>
    </tr>
  </tbody>
</table>

我没有收到任何错误,此系统刷新更新数据库,有时从输入中获取值,有时不。。有时您必须手动刷新页面,才能使条目不再显示在屏幕上。

您的问题中缺少一些上下文以使其更清晰,但听起来您应该在前一个请求成功后才调用
post
请求,例如:

$(document).on('click', 'button.markScheduled', function (e) {

    var ordid = $(this).attr('ordid');
    var scheduledate = $('input.scheduleDate').val();

    $.ajax({
        url: "assets/ajax/order.php",
        type: "POST",
        data: {
            ordid: ordid,
            date: scheduledate
        },
        error: function (exception) {
            alert('Exception:' + exception);
        }
    }).done(function () {
        $.post('assets/ajax/calldata/newords.php', function (data) {
            $('#newords').html(data).find('.datepicker').datepicker({
                todayHighlight: 'TRUE',
                autoclose: true
            });
        });
    });
});

也就是说,您最好只使用一个请求来更新数据库并处理页面上返回的结果…

当它失败时,您是否有任何错误???但听起来您应该只在第一个ajax请求完成/成功后调用第二个ajax请求,当第一个请求失败时,请在控制台中查看…尝试将$.post放入$.ajax success中,然后查看。我没有发现任何错误,此系统刷新更新数据库有时会从输入中获取值,有时不会。。有时您必须手动刷新页面,以使条目不再显示在屏幕上。为什么要初始化日期选择器3次?不需要这样。@areim OP正在更新
#newwords
内容,我猜其中包含
.datepicker
元素。所以在这种情况下,这是有意义的,因为AFAIK,datepicker插件不支持任何类型的删除我如何输出到chrome控制台?