Jquery 使用Specefic类循环表单元素
实际上,我正在验证一个包含文本、选择、下拉等字段的表单。我有一些必填字段,我给了它们一个类requiredonly textfields。现在我想循环遍历所有表单元素,检查该元素是否有必需的类,然后在该字段后面附加一个*。我已经使用了每种方法,但我没有让它完全按照我想要的方式工作 我的代码如下所示:Jquery 使用Specefic类循环表单元素,jquery,forms,jquery-selectors,validation,this-keyword,Jquery,Forms,Jquery Selectors,Validation,This Keyword,实际上,我正在验证一个包含文本、选择、下拉等字段的表单。我有一些必填字段,我给了它们一个类requiredonly textfields。现在我想循环遍历所有表单元素,检查该元素是否有必需的类,然后在该字段后面附加一个*。我已经使用了每种方法,但我没有让它完全按照我想要的方式工作 我的代码如下所示: function validate_form() { $("#mysubmit").each(function() { if($("form :text.required:t
function validate_form() {
$("#mysubmit").each(function() {
if($("form :text.required:text").val() == "" )
{
$("form :text.required:text").html("*");
return false;
}
return true;
});
}
function validate_form() {
var valid = true;
$('form .required:text').each(function(){
var $spanVal = $(this).next(); //Try to get the validation message (who has '*')
if ($(this).val()!="" && $spanVal.is("span.validation")){ //If text has value
$spanVal.remove(); //remove the asterisk
}else if($(this).val()==""){ //If text is empty
if(!$spanVal.is("span.validation")){ //Create a validation message if it doesn't exist
$('<span class="validation">*</span>').insertAfter(this);
}
valid = false;
}
});
return valid;
}
其中mysubmit是我的提交按钮的id
我想逐一遍历DOM元素。任何人都可以帮助我如何验证此表单。
谢谢您可以使用它在所需元素后添加*如下:
$('.required').after('<span>*</span>');
迭代应用它的选择中的所有元素。在您的例子中,$mysubmit只是我假设的提交按钮的一个元素。没有必要。
以下是您的代码的重写版本:
function validate_form() {
var valid = true;
$('form .required').each(function(){
if ($(this).val()==''){
$(this).after('<span>*</span>');
valid = false;
}
});
return valid;
}
注:
不需要$mysubmit.each,因为函数中的逻辑不依赖于submit按钮
像您尝试过的那样从函数返回值并不能像您期望的那样工作。如果从.each函数返回false,它将停止迭代。
$form:text.required:text将匹配包含该类的所有文本字段。required,而不是您所期望的一个文本字段。
您可以使用在所需元素后附加*,如下所示:
$('.required').after('<span>*</span>');
迭代应用它的选择中的所有元素。在您的例子中,$mysubmit只是我假设的提交按钮的一个元素。没有必要。
以下是您的代码的重写版本:
function validate_form() {
var valid = true;
$('form .required').each(function(){
if ($(this).val()==''){
$(this).after('<span>*</span>');
valid = false;
}
});
return valid;
}
注:
不需要$mysubmit.each,因为函数中的逻辑不依赖于submit按钮
像您尝试过的那样从函数返回值并不能像您期望的那样工作。如果从.each函数返回false,它将停止迭代。
$form:text.required:text将匹配包含该类的所有文本字段。required,而不是您所期望的一个文本字段。
正如您所说的,您希望附加“*”。你想把它插进去
我们将使用class=validation创建一个span,如下所示:
function validate_form() {
$("#mysubmit").each(function() {
if($("form :text.required:text").val() == "" )
{
$("form :text.required:text").html("*");
return false;
}
return true;
});
}
function validate_form() {
var valid = true;
$('form .required:text').each(function(){
var $spanVal = $(this).next(); //Try to get the validation message (who has '*')
if ($(this).val()!="" && $spanVal.is("span.validation")){ //If text has value
$spanVal.remove(); //remove the asterisk
}else if($(this).val()==""){ //If text is empty
if(!$spanVal.is("span.validation")){ //Create a validation message if it doesn't exist
$('<span class="validation">*</span>').insertAfter(this);
}
valid = false;
}
});
return valid;
}
希望这有帮助。干杯。正如您所说,您想在“*”后面加上。你想把它插进去
我们将使用class=validation创建一个span,如下所示:
function validate_form() {
$("#mysubmit").each(function() {
if($("form :text.required:text").val() == "" )
{
$("form :text.required:text").html("*");
return false;
}
return true;
});
}
function validate_form() {
var valid = true;
$('form .required:text').each(function(){
var $spanVal = $(this).next(); //Try to get the validation message (who has '*')
if ($(this).val()!="" && $spanVal.is("span.validation")){ //If text has value
$spanVal.remove(); //remove the asterisk
}else if($(this).val()==""){ //If text is empty
if(!$spanVal.is("span.validation")){ //Create a validation message if it doesn't exist
$('<span class="validation">*</span>').insertAfter(this);
}
valid = false;
}
});
return valid;
}
希望这有帮助。干杯。这就是我如何解决我的问题而没有 在if语句中,删除警报并追加*:think it should work
这就是我解决问题的方式 在if语句中,删除警报并追加*:think it should work
我添加了一点来验证空白,但它不验证空白。这里我错在哪里:如果$this.val==| |$this.val.replace/\s/g,.length==0,谢谢你的回答,我添加了一点来验证空白,但它不会验证空白。我错在哪里:如果$this.val==| |$this.val.replace/\s/g,.length==0并感谢您的回答,我们始终欢迎您链接到一个潜在的解决方案,但请让您的其他用户了解它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防无法访问目标站点或永久脱机。考虑到仅仅是一个指向外部站点的链接是一个可能的原因。一个指向潜在解决方案的链接总是受欢迎的,但是请让您的其他用户知道它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防无法访问目标站点或永久脱机。考虑到仅仅是一个指向外部站点的链接是一个可能的原因。