首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery ajax延迟表单提交

问jquery ajax延迟表单提交
EN

Stack Overflow用户
提问于 2012-03-05 01:43:20
回答 3查看 5.3K关注 0票数 0

我有一段jquery ajax代码,如果表单发生更改,它会提交表单。我唯一的问题是,我的表单中也有一个国家/地区jquery选项,每次我单击自动补全建议时,带有旧/上一个值的表单都会被提交。例如:我搜索“奥地利”并单击它,结果提交了一个空值。然后我将其更改为“波兰”,并将奥地利的"at“更改为提交。我的想法是延迟ajax调用:$.ajax,但是我不知道该怎么做。

代码语言:javascript
复制
<script type="text/javascript">
$(document).ready(
function submitFormAjax()
{
    $('#myForm').change(function() {
        $.ajax({
            type:"POST",
            url:"ajax.php",
            data:$(this).serialize(),
            success:function(data)
            {
                $("#ajaxList").html(data);

            }
        })

      return false;
    });
});
</script>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-05 01:55:00

不确定它是否会工作,如果没有看到更多的代码就很难判断,但这里是如何延迟$.ajax的!

代码语言:javascript
复制
$('#myForm').on('change', function() {
   setTimeout(submitFormAjax, 200);
   return false;
});
function submitFormAjax() {
    $.ajax({
        type:"POST",
        url:"ajax.php",
        data:$('#myForm').serialize(),
        success:function(data) {
            $("#ajaxList").html(data);
        }
    });
}
票数 0
EN

Stack Overflow用户

发布于 2012-03-05 01:52:19

setTimeout将在这里完成这项工作:

代码语言:javascript
复制
$('#myForm').change(function() {
    var self = $(this);
    setTimeout(function () {
        $.ajax({
            type:"POST",
            url:"ajax.php",
            data:self.serialize(),
            success:function(data)
            {
                $("#ajaxList").html(data);

            }
        })
    }, 1000);
    return false;
});
票数 1
EN

Stack Overflow用户

发布于 2012-03-05 02:01:18

代码语言:javascript
复制
$('#myForm').change(function() {
 var val = $(this).serialize();
 setTimeout(delayAjax(val),1000);
});

定义延迟ajax函数

代码语言:javascript
复制
function delayAjax(formVal){

 $.ajax({
            type:"POST",
            url:"ajax.php",
            data:formVal,
            success:function(data)
            {
                $("#ajaxList").html(data);
            }
        });
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9557287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档