如何在JS中自动提交表单,当字段达到一定数量的字符


How to autosubmit a form in JS when a field reaches a number of characters?

当一个字段完全填满时,还有什么更好的方法可以让表单自动提交呢?我需要他这样做,当它达到7个字符在字段

<html>
<head>
<script type="text/javascript">//<![CDATA[
window.onload=function() {
    document.getElementById('myField').oninput=function() {
        if (this.value.length >= 7) {
            document.getElementById('myForm').submit();
        }
    };
};
//]]>
</script>
</head>
<body>
<form id="myForm" method="post" action="thispage.php">
<input id="myField" name="myField" type="text" />
</form>
</body>
</html>

就可以了。但是,如果用户在第7个字符上犯了错误怎么办?像这样自动提交表单似乎有点不友好。

试试这个,并检查一下jsfield link:

$(document).ready(function(){
    $("#submit").on('keyup',function(){
        var len = parseInt($("#submit").val().length);
        if( len > 5) { 
          $("#form").submit();
        }
    });
});

JSFIDDLE

您可以这样做,通过检查字符长度,如果您的数字出现,则submit() .

var field = document.getElementById('text-1');
field.addEventListener('input', function(e) {
  console.log('working');
  if (e.target.value.length >= 7) {
    console.log('auto ');
    document.forms[0].submit();
  }
}, true);
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Example</title>
</head>
<body>
  <form action="/" id="myForm" mehtod="POST">
    <input type="text" value="" name="text-1" id="text-1" />
    <input type="submit" value="Submit" name="sub" id="sub" />
  </form>
</body>
</html>