大家好我有一个有4个字段的表单 我可以检查是否有任何字段是空的并且没有问题地更改背景颜色,但我得到的问题是如果所有字段都不为空它不会继续使用代码
$(document).ready(function(){
$("#submitpw").click(function(){
var un = $("#FirstName").val();
var pw = $("#LastName").val();
var sid = $("#StudentID").val();
var ss = $("#LastFour").val();
var unl = un.substring(0,un.length - un.length + 1);
var pwl = pw.substring(0,pw.length - pw.length +4)
var emptyTextBoxes = $('.information').filter(function() { return this.value == ""; });
emptyTextBoxes.each(function() {
if ($('.information:empty'))
{
$(this).css("background-color", "red");
alert("Please Enter Information in the Red Fields");
}
else
{
("This is the part that never triggers!!!")
alert("it worked");
$("#campusun").html(unl+pwl+sid+ss);
$("#campuspw").html(sid+ss);
$("#emailun").html(unl+pwl+sid+"@live.tcicollege.edu");
$("#emailpw").html(sid+ss);
}
});
});
});
答案 0 :(得分:0)
当然它永远不会触发。你基本上将$('.information')
中的一组元素组合在一起,比如你得到3个元素。 each
方法将调用每个元素的回调;由于$('.information')
必须非空,甚至不能调用回调,并且您的检查的代码在调用的回调中,它永远不会满足条件。
听起来你想要这样做:
if(emptyTextBoxes.length == 0)
{
alert("it worked");
$("#campusun").html(unl+pwl+sid+ss);
$("#campuspw").html(sid+ss);
$("#emailun").html(unl+pwl+sid+"@live.tcicollege.edu");
$("#emailpw").html(sid+ss);
}
else
{
emptyTextBoxes.each(function()
{
$(this).css("background-color", "red");
alert("Please Enter Information in the Red Fields");
});
}