javascript – Ajax请求附加多个匹配

如果用户填写了一些无效数据,则会触发ajax请求并显示错误消息.现在,当用户再次更正数据/或再次输入无效数据时,将触发2个请求,下一次3,并且它会继续累加.

这可能是因为parsley js库.如果我删除欧芹代码它工作正常.任何的想法?

这是ajax代码

    $('#upload-profile-button').on('click', function(e) {
        $("#upload-profile-form").parsley().validate();
        $("#upload-profile-form").parsley().on('form:validate', function (formInstance) {
            var isFormValid = formInstance.isValid();
            if(isFormValid){
        e.preventDefault();
        $('#upload-profile-button').html('Uploading...');
        var fd = new FormData($("#upload-profile-form")[0]);
        $.ajax({
            type : 'POST',
            url : '/mbatch/batch/uploadBatch',
            data : fd,
            processData : false,
            contentType : false,
            beforeSend : function() {

            },
            success : function(response) {
                if (response.data.fetchTpodSuccess == true) {
                    window.location.href= "/mbatch/batch/listBatch";
                } else {
                    new PNotify({
                        title: 'Notice',
                        text: response.message,
                        type: 'error',
                        styling: 'bootstrap3'
                    });
                        $('#upload-profile-button').html('Submit');
                }
            },
            error : function(data) {
                new PNotify({
                    title: 'Notice',
                    text: JSON.parse(data.responseText).message,
                    type: 'error',
                    styling: 'bootstrap3'
                });
                    $('#upload-profile-button').html('Submit');
            }
        });
}
             });
   });

这是HTML代码

    <button id="upload-profile-button" type="button"
                                    class="btn btn-primary">Submit</button>

任何线索都将受到高度赞赏.

解决方法:

我刚刚找到了解决方案.
这是因为我在表单标签中也使用了data-parsley-validate
而且在js中也是如此

    <form id="upload-profile-form" data-parsley-validate enctype="multipart/form-data"
                        name = "uploadBatchForm"
                        class="form-horizontal form-label-left"
                        >

Parsley在文档加载时查看DOM中的所有数据 – parsley-validate事件,并在有效时自动绑定它们.
一旦表单或字段实例被Parsley绑定,就执行$(‘#form’).parsley(options);将更新现有选项但不替换它们.

来源 – http://parsleyjs.org/doc/index.html

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...