如何提醒用户空白表单域
How to alert user for blank form fields?
我有这个表单,它有 3 个输入,当用户将字段留空时,会弹出一个对话框,提醒用户字段为空。 我在下面的代码仅适用于 2 个特定输入。 当我尝试向代码添加另一个输入时,它不起作用。 它仅适用于 2 个输入。 如何使其适用于所有三个?
<script type="text/javascript">
function val(){
var missingFields = false;
var strFields = "";
var mileage=document.getElementById("mile").value;
var location=document.getElementById("loc").value;
if(mileage=='' || isNaN(mileage))
{
missingFields = true;
strFields += " Your Google Map's mileage'n";
}
if(location=='' )
{
missingFields = true;
strFields += " Your business name'n";
}
if( missingFields ) {
alert( "I'm sorry, but you must provide the following field(s) before continuing:'n" + strFields );
return false;
}
return true;
}
</script>
显示 3 个警报可能会令人不安,请使用如下内容:
$(document).on('submit', 'form', function () {
var empty = $(this).find('input[type=text]').filter(function() {
return $.trim(this.value) === "";
});
if(empty.length) {
alert('Please fill in all the fields');
return false;
}
});
灵感来自这篇文章。
或者,您可以使用 HTML 数据属性以这种方式对每个字段进行验证:
<form data-alert="You must provide:" action="" method="post">
<input type="text" id="one" data-alert="Your Google Map's mileage" />
<input type="text" id="two" data-alert="Your business name" />
<input type="submit" value="Submit" />
</form>
。结合 jQuery:
$('form').on('submit', function () {
var thisForm = $(this);
var thisAlert = thisForm.data('alert');
var canSubmit = true;
thisForm.find('input[type=text]').each(function(i) {
var thisInput = $(this);
if ( !$.trim(thisInput.val()) ) {
thisAlert += ''n' + thisInput.data('alert');
canSubmit = false;
};
});
if( !canSubmit ) {
alert( thisAlert );
return false;
}
});
看看这个脚本的实际效果。
当然,您只能选择/检查具有属性data-alert
的输入元素(这意味着它们是必需的)。混合输入元素的示例。
您可以在输入字段中添加所需的标签。不需要jQuery。
<input required type="text" name="name"/>
试试这个
var fields = ["a", "b", "c"]; // "a" is your "mile"
var empties= [];
for(var i=0; i<fields.length; i++)
{
if(!$('#'+fields[i]).val().trim())
empties.push(fields[i]);
}
if(empties.length)
{
alert('you must enter the following fields '+empties.join(', '));
return false;
}
else
return true;
而不是这个
var name = $('#mile').val();
if (!name.trim()) {
alert('you must enter in your mile');
return false;
}
相关文章:
- 如何在提交空白表单时隐藏图像
- 如何在 ASP.NET Web 表单中填补服务器端和客户端之间的空白
- 如何提醒用户空白表单域
- 输入表单中不允许有空白字符/空格
- 添加换行符 JavaScript pdf 表单时的文本字段空白
- 在使用PHP和Javascript提交表单时无法检查空白选择字段
- mootools表单验证器接受空白和电子邮件验证
- jquery validate和ajax post表单的验证表单空白文本区域出错
- 联系表单返回空白页
- Redux表单:提交空白字段导致错误
- Ajax表单$_POST空白返回数据
- Redux:表单输入字段保持空白
- Angular在打印表单时只显示空白页
- Chrome扩展表单输入文本是空白提交
- 为什么javascript触发提交表单(方法get,目标空白)打开弹出窗口而不是新选项卡
- JQuery HTML表单验证仍然会触发带有空白条目的电子邮件
- 基于PHP ajax的表单显示空白页面
- 表单提交字段为空白.使用Javascript隐藏和显示字段
- ajax表单只向第一个id提交空白描述
- Php表单验证的最小字符需要避免空白