键入最后一位数字后自动提交
Automatic submit after type the last digit
我有一个字段12345,当我键入最后一个数字5…时,我需要自动提交表格
如何使用javascript?
我看到有人创建了一个jquery结果,但这里有一个简单的javascript
<input type="text" onkeyup="submitForm(this.value)">
function submitForm(str){
if(str.length=5){
document.forms["myform"].submit();
}
}
或者这个:
$('input[type=text]').on('keyup', function(){
if($(this).val().length == 5){
alert('5 digit!');
//$('#myform').submit();
}
});
$('.input').change(function() {
if ($(this).val().length >= 5) {
$('.Form').submit();
}
});
$('#input').keyup(function(){
var content = new String( $(this).val() );
if( content.length > 4 ){
/* do your stuff here */
}
});
http://jsfiddle.net/3xHsn/
$("#foo").keyup(function(){
var val = $(this).val();
if (val.length == 5 && Number(val)){
$("form").submit();
}
});
只有当值为5位并且是有效数字时,才会提交此项。另一种选择是使用regex将值验证为邮政编码。
regex解决方案可在此处找到:http://jsfiddle.net/3xHsn/1/
$("#foo").keyup(function(){
var val = $(this).val();
var regex = /^'d{5}$/;
if (val.match(regex)){
$("form").submit();
}
});
regex在这里非常简单,只检查字符串是否正好是五位数字,并且只有五位数字。
此解决方案假定您相应地设置了maxlength属性。它还使用了"input"事件,根据我的经验,它远比按键、keyup等更可靠。
html:
<form id="theform" action="gfdgf">
<input id="someid" type="text" maxlength="5"/>
</form>
jQuery:
$(document).on('input','#someid',function() {
var that=$(this);
if (that.val().length==that.attr('maxlength')) {
that.closest('form').submit();
}
});
Fiddle
相关文章:
- Javascript生成的表单未提交
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- HTML表单提交时未执行外部函数
- 键入最后一位数字后自动提交
- 在数字输入上按回车键时提交
- 在提交表单和显示消息之前,如何检查表单输入是否全是数字
- 如何创建一个计数器循环,该循环在单击提交按钮时启动,并输出多行单词,每个单词前面都有一个数字
- 如何确保提交的数据是有效的数字对
- 如何允许html表单只在字段中的数字加起来达到一定总和时提交
- 重置输入:提交后的数字
- 表单提交前,JS输出所有已检查输入字段值的总和(仅数字)
- 如何在没有页面提交的情况下使用Codeigniter从输入框中获得两个数字的差值
- Android和HTML5数字输入自动提交行为
- 如何停止随机生成的数字从刷新表单提交
- 范围内的非重复数字,并从表单提交到页面
- 如何在提交表单之前删除自动数字格式
- 按数字键提交表格
- 阻止基于在框中输入相同数字的表单提交
- jQuery可以根据所有数字或字母的输入触发不同表单的提交
- 确保用户在JavaScript表单中提交的邮政编码不能少于5个数字