我有一个页面有几个表单,我想为表单中的每个输入添加一个JQUERY或AJAX检查。 所有输入都是必需的。我确实设法进行检查,但我需要添加检查foreach输入,我真的不喜欢。 你能帮我把这个输入检查更加全局化吗? 我设法制作了这段代码:
$(document).ready(function()
{
$(document.login.user).blur(function()
{
if (document.login.user.value == "")
{
document.login.user.style.background = "red";
}
else document.login.user.style.background = "white";
});
$(document.login.pass).blur(function()
{
if (document.login.pass.value == "")
{
document.login.pass.style.background = "red";
}
else document.login.user.style.background = "white";
});
});
你可以让它全局工作..分别检查每个输入并产生我已添加的效果。
答案 0 :(得分:2)
你可以创建一个这样的简单插件:
(function($){
$.fn.validateEmpty = function(settings) {
return $(this).each(function(){
$(this).css({background: $(this).val() == '' ? settings.empty : settings.nonEmpty});
});
};
})(jQuery);
然后使用它:
$(document).ready(function(){
$('#myForm input').blur(function(){
$(this).validateEmpty({empty: 'red', nonEmpty: 'green'});
});
});
答案 1 :(得分:1)
$('form.formclass input').blur(function() {
if($(this).val() == '') {
$(this).css('background-color', 'red');
} else {
$(this).css('background-color', 'white');
}
});
您需要更改选择器以表示您的表单字段
修改强>
答案 2 :(得分:1)
我对Jquery Validate()插件运气良好:http://docs.jquery.com/Plugins/validation。然后,您只需使用“必需”类标记要验证的每个字段。注意:适用于jquery 1.5.2而不是1.6.2(这样可以省去一些痛苦)
答案 3 :(得分:1)
您可以通过为每个输入字段提供一个公共类来选择所有输入字段,并使用类选择器或简单地通过表单下的标记名称选择它们。试试这个
$(document).ready(function(){
$("form").find("input, textarea").blur(function(){
var $this = $(this);
if($this.val() == ""){
$this.css("backgroundColor", "red");
}
else{
$this.css("backgroundColor", "white");
}
});
});
答案 4 :(得分:0)
您可以使用以下选项在所有输入元素上使用选择器进行检查:
$("input").blur( ....etc... )
或者,您可以为要测试的任何元素指定一个类,并检查该类的任何元素......
(".className").blur( ....etc.... )
答案 5 :(得分:0)
您应该尝试使用插件来简化验证需求。这个通常是一个很好的解决方案:http://docs.jquery.com/Plugins/validation
答案 6 :(得分:0)
使用jquery的each()函数迭代所有可用的输入框。
我再次知道它是一种for循环类型,但对我来说它更通用的jquery。