Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.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 当表单中的所有输入元素都已完成/填写时,如何自动触发表单上的提交操作(<;表单>;<;/表单>;)?_Javascript_Jquery_Forms_Submit - Fatal编程技术网

Javascript 当表单中的所有输入元素都已完成/填写时,如何自动触发表单上的提交操作(<;表单>;<;/表单>;)?

Javascript 当表单中的所有输入元素都已完成/填写时,如何自动触发表单上的提交操作(<;表单>;<;/表单>;)?,javascript,jquery,forms,submit,Javascript,Jquery,Forms,Submit,我希望表单()上的提交操作在表单中的所有输入元素完成/填充后自动触发。如何使用ajax进行此操作?如下所示: $("#myForm :input").blur(function() { if($('#myForm :input[value]').length == $('#myForm :input').length) { $(this).closest("form").submit(); } return false; }); 注意以下几点: $("

我希望表单()上的提交操作在表单中的所有输入元素完成/填充后自动触发。如何使用ajax进行此操作?

如下所示:

$("#myForm :input").blur(function() {
    if($('#myForm :input[value]').length == $('#myForm :input').length) {
        $(this).closest("form").submit(); 
    }
    return false;
});
注意以下几点:

$("#myForm :input").blur(function() {
    if($('#myForm :input[value]').length == $('#myForm :input').length) {
        $(this).closest("form").submit(); 
    }
    return false;
});
  • 选择器匹配 所有输入、文本区域、选择和 按钮元素
  • 选择器返回最近的父元素
更新: 除了卡里姆79

$("#myForm :input").blur(function() {
    var hasEmpty = false;
    if($('#myForm :input[value]').length == $('#myForm :input').length) {
        $(this).closest("form").submit();

    var name = "", email = ""; //Get the value for name and email from the form
    var dataString = 'name='+ name + '&email=' + email;
           $.ajax({
              type: "POST",
              url: "page.aspx",
              data: dataString,
              success: function() {
                $('#message').html("<h2>Form Submitted!</h2>");//Display message
              }
             }); 
    }
    return false;
});
您需要在验证字段后调用此函数


并检查现场。

phew太快了。很好的回答。+1是这个问题的好答案,但我同意评论说这听起来是个坏主意。我不认为“:empty”选择器会像你期望的那样在文本类型的输入字段上工作…@karim79-是我:)我正在Firefox 3.5中测试这个。我有一个表单,有一个文本类型的输入元素。在Firebug控制台中键入$(':input:empty')[0]将返回该元素,无论我在输入字段中键入什么。@mtyaka-您是正确的。我已经编辑了答案,很抱歉抱怨被否决。你确定吗?听起来很突兀…对我来说这是个坏主意。如果用户在其中一个字段中输入错误怎么办?在提交数据之前,无法验证和修复数据。我想通过Ajax进行提交。我想使用Ajax提交所有输入值。karim检查所有字段是否已填充的方法仍然是可行的;只需将表单提交部分更改为ajax请求