jquery验证表单错误,如何解决?

时间:2013-05-29 11:59:37

标签: jquery forms validation

问题:我有表单而且没有可见的块,当表单为空时,不可见的块应该是可见的,我该怎么做。请帮助我guyes 我的代码不工作!可以吗

HTML

<div id="commentwindow">
     <form name="comment" action="#" method="post">
         <p><input id="name" required="" type="text" maxlength="25" placeholder="tell your name" formmethod="get" onchange="Validate()"></p>
         <textarea  id="flud" required="" placeholder="some text please"></textarea>
         <p class="clearfix nopadding"><input class="submit" type="submit" value="add" formaction="#" onchange="Validate()"></p>
     </form>
     <p id="error">hello</p> <!--display: none in CSS-->
 </div>

JQuery的

$(document).ready(function Validate() {
if ('#name'.val() == "" || '#flud'.val() == "") {
    $('#error').show();
} else {
    $('#error').hide();
})

})

7 个答案:

答案 0 :(得分:1)

你在选择器语法中犯了错误:

if ('#name'.val() == "" || '#flud'.val() == "")

应该是这样的:

if ($('#name').val() == "" || $('#flud').val() == "")

答案 1 :(得分:0)

首先,你不需要给你的功能命名,它是匿名的

$(document).ready(function Validate() {

其次,你的if语句缺少jQuery选择器语法:

if ('#name'.val() == "" || '#flud'.val() == "") {

应该是

if ($('#name').val() == "" || $('#flud').val() == "") {

答案 2 :(得分:0)

您的js代码不正确。将此函数放在document.ready

之外
function Validate() {
if ($('#name').val() == "" || $('#flud').val() == "") {
    $('#error').show();
} else {
    $('#error').hide();
}

答案 3 :(得分:0)

你的JS有点混乱了。试试这个:

$(document).ready(function Validate() {
    if ($('#name').val() == "" || $('#flud').val() == "") {
        $('#error').show();
    } else {
        $('#error').hide();
    })
})

答案 4 :(得分:0)

尝试以下方式进行:

$(document).ready(function Validate() {
 if ($('#name').val() == "" || $('#flud').val() == "") {
      $('#error').show();
 } else {
$('#error').hide();
})
});

我希望它会对你有所帮助。 :)

答案 5 :(得分:0)

以下是我的表现......

$('#error').toggle(! $('#name').val() || ! $('#flud').val());

字符串上没有val()属性......但是。

答案 6 :(得分:0)

选择语法错误。您应该选择

if ($('#name').val() == "" || $('#flud').val() == "")

并使用length代替""

val().length == 0