jQuery Ajax已开始不发布正确的URL

时间:2018-07-18 00:39:19

标签: javascript jquery ajax

不确定发生了什么变化,但是今天注意到,当我向Ajax请求提交表单时,它可以正常工作,但是,在下一个表单中,URL保留为上一个调用的URL,或者只是回退到页面网址。这仅在表单提交时发生,而不是在通过Ajax加载其他内容时发生。

这里是一个例子:

  1. 加载包含内容(包括表单)的模态框(GET)。
  2. 表格将(POST)提交到正确的网址,即“ / workforce / network / participant / retailer-contract”
  3. 加载带有内容(包括表单)的新模态框(GET)。
  4. 尝试提交表单,而不是转到“劳动力/网络/参与者/零售商声明”,而是转到当前页面网址“劳动力/网络/参与者/联系人-能量”

我曾经由vars设置Ajax url,并将其更改为从形式动作中获取,该形式动作在模态负载上进行了更新。在使用console.log的各个阶段可以看到正确的URL,该表单显示正确的URL,但是在提交时却没有。

我有一个setupAjax清除了Ajax url,但这似乎也没有任何作用。

下面是现在似乎已开始引起问题的代码的一部分:

@Start_Date datetime
@End_Date  datetime

@End_Date - @Start_Date = 5 days, 3 hours, 2 min, 10 sec

setupModal和setupAjax位于另一个文件中,如下所示:

var _loadModal = function(widget, id = null, data = null){
    var modal = EMPGlobal.setupModal();
    modal.form.attr('id', widget);
    modal.form.attr('action', pageUrl + widget);
    EMPGlobal.ajaxSetup(modal.load, true, modal.message);
    $.ajax({
        url: url,
        data: data,
        method: 'GET',
        success: function(result) {
            modal.load.html(result);
            if(EMPGlobal.modalShown(modal.show) == false){
                modal.show.modal('show');
            }
            _validateForm(widget, modal);
        }
     });
 };

_validateForm = function(formID, modal){
    console.log(formID);

    var prevComplete = 0;

    validator = $('form#' + formID).validate({
        submitHandler: function (form){
            console.log(form);
            EMPGlobal.ajaxSetup(modal.load, true, modal.message);
            $.ajax({
                url: $('form#' + formID).attr('action'),
                type: "POST",
                data: new FormData($(form)[0]),
                success: function (result) {
                    EMPGlobal.showAlert(result);
                    validator.resetForm();
                    $('form#' + formID).validate('destroy');
                    modal.show.modal('toggle');
                    $('#' + pageName + ' ul.alphabet-list li.selected a').click();
                    return false;
                }
            });
            return false;
        }
    });

    modal.save.unbind().on('click', function(){
        $("#" + formID).submit();
    });     
};

这真让我感到难过,无法理解。

如果需要进一步的信息,请告诉我。

提前感谢您的帮助

0 个答案:

没有答案