我在我的网站上有一个查询页面,我正在使用jquery ajax验证。
我的代码是:
.*/(.*?)(?:\?.*|$)
我的问题是,当我点击没有任何值的按钮时,它只会显示E-MAIL的错误(必填)消息而不是SUBJECT,它是如何发生的?
答案 0 :(得分:1)
这是因为textarea声明中有空格
<textarea name="contentsub" id="contentsub"> </textarea>
--------------------------------------------^
所以长度等于一。
您可以删除空格以更正问题
<textarea name="contentsub" id="contentsub"></textarea>
演示:
if(!$("#contentsub").val())
document.write('KO');
if(!$("#contentsub2").val())
document.write('OK');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea name="contentsub" id="contentsub"> </textarea>
<textarea name="contentsub" id="contentsub2"></textarea>
答案 1 :(得分:0)
function sendContact() {
var valid;
valid = validateContact();
if(valid) {
alert("valid data");
}
else{
alert("invalid data");
}
}
function validateContact() {
var valid = true;
$(".textbox").css('background-color','');
$(".error").html('');
if(!$("#userEmail").val()) {
$("#userEmail-info").html("(required)");
$("#userEmail").css('background-color','#D2434E');
valid = false;
}
if($.trim($("#contentsub").val()).length == 0) {
$("#content-info").html("(required)");
$("#contentsub").css('background-color','#D2434E');
valid = false;
}
return valid;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div class="contact-form" id="frmContact">
<h2>Contact Us</h2>
<div id="mail-status"></div>
<div class="left_form">
<div>
<span><label>NAME</label></span>
<span><input name="userName" id="userName" type="text" class="textbox"></span>
</div>
<div>
<span><label>E-MAIL <span class='error' id="userEmail-info" style="color:#C40401;text-align:center;margin-bottom:5px;"></span><font color="#C40401">*</font></label></span>
<span><input name="userEmail" id="userEmail" type="text" class="textbox"></span>
</div>
<div>
<span><label>PHONE</label></span>
<span><input name="subject" id="subject" type="text" class="textbox"></span>
</div>
</div>
<div class="right_form">
<div>
<span><label>SUBJECT <span class='error' id="content-info" style="color:#C40401;text-align:center;margin-bottom:5px;"></span><font color="#C40401">*</font></label></span>
<span><textarea name="contentsub" id="contentsub"> </textarea></span>
</div>
<div id="submit">
<span><input type="submit" name="submit" value="Submit" class="myButton" onClick="sendContact();"></span>
</div>
</div>
<div class="clearfix"></div>
</div>
而不是:
if(!$("#contentsub").val())
请你试试:
if($.trim($("#contentsub").val()).length == 0)