gpt4 book ai didi

javascript - 循环输入字段时设置标志

转载 作者:行者123 更新时间:2023-12-03 12:42:33 25 4
gpt4 key购买 nike

我有一系列多个文本字段和一个文本区域。我循环遍历文本字段和文本区域并检查是否有值。如果没有值,我会设置一个标记,表示 pass=false。 否则,我会设置 pass=true,并希望在所有结果都为 true 时触发自定义事件。问题在于,由于一个输入字段的计算结果为 true,所以即使其中两个字段没有值,它也会将所有字段计算为 true。如果我想要这样,所有字段都必须填写,但如果填写其中一两个字段,但仍然设置 pass=false ,我该怎么做?非常感谢任何帮助!

JS fiddle 链接:http://jsfiddle.net/YyAjp/12/

HTML:

<form name="headerForm">
<label for="fname">*First Name</label>
<input type="text" class="text" id="fname" name="fname" />
<br/>

<label for="mname">*Middle Name</label>
<input type="text" class="text" id="mname" name="mname" />
<br/>

<label for="fname">*Last Name</label>
<input type="text" class="text" id="lname" name="lname" />
<br/>

<label for="notes">*Notes</label>
<textarea name="notes" /></textarea>

<a href="#" id="submit">Submit</a>
</form>

JQUERY

$(document).ready(function() {       
$("#submit").on('click', function() {
var pass;
$("input,textarea,select").each(function() {
if($(this).val() === ''){
pass = false;
$(this).prev('label').css('color','red');
} else {
pass = true;
$(this).prev('label').css('color','black');
}
});
console.log(pass);
if(pass){ alert('trigger custom event') } else { alert('pass failed'); }
});
});

最佳答案

改变

pass = true;

进入

pass = pass && true;

并将其初始化为true:

$("#submit").on('click', function() {    
var pass = true;

http://jsfiddle.net/mblase75/pgM5X/

(您可能还想首先对值使用 $.trim()。)

关于javascript - 循环输入字段时设置标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23482621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com