2011-04-13 124 views
2

我遇到了表单的jQuery验证问题。hide()函数在jQuery中不起作用

这是我的javascript文件:test.js.

$(function() { 
$('.error').hide(); 
    $(".button").click(function() { 
     $('.error').hide(); 
    var name = $("input#name").val(); 
    if (name == "") { 
    $("label#name_error").show(); 
    $("input#name").focus(); 
    return false; 
    } 
}); 
}); 

这是我的HTML文件。

<html> 
<head> 
<script type="text/javascript" src="test.js"></script> 
<script type="text/javascript" src="jquery-1.5.2.min.js"></script> 
</head> 
<body> 
<div id="contact_form"> 
<form name="contact" action=""> 
    <label for="name" id="name_label">Name</label> 
    <input type="text" name="name" id="name" size="30" value="" class="text-input" /> 
    <label class="error" for="name" id="name_error">This field is required.</label> 
</form> 
</div> 
</body> 
</html> 

我将这两个文件与jQuery文件放在我的服务器上的同一目录中,但内容为“此字段是必需的”。仍然可见。它似乎像test.js中的hide()函数不起作用。任何人都可以指出我哪里错了?万分感谢!

+4

将'jquery-1.5.2.min.js'引用**放在**'test.js'引用上面,以便它能被识别。 – 2011-04-13 12:30:22

+1

[在此jsfiddle工作](http://jsfiddle.net/ehrg4/)。它隐藏在运行中。 – justkt 2011-04-13 12:30:51

+1

有没有人再调试自己的代码?任何简单的错误都会立即发布到stackoverflow – Calum 2011-04-13 12:33:20

回答

9

把你的jquery文件放在你的test.js之前。

<script type="text/javascript" src="jquery-1.5.2.min.js"></script> 
<script type="text/javascript" src="test.js"></script>