今天照著jQuery手冊學習,了解了選擇器的使用,准備試試寫個用戶注冊驗證,沒想到還沒開始一個很小的問題把我難住了!
新人難免遇到很小的細節問題,在此文僅供自勉:
測試部分代碼如下:
. 代碼如下:
<script type="text/javascript" src="jquery.1.11.0.min.js"></script>
<script type="text/javascript">
function checkUser(){ //檢查用戶名的函數
alert("OK"); //測試。。。
}
$(document).ready(function(){
$(":text :first").blur(function (){ //當失去焦點觸發的事情
/**此處就是我折騰好久的地方。當然我想獲得的是用戶注冊元素,所以我用
* 如上選擇器,結果根本不行!檢查代碼,發現根本就沒有錯誤!那問題出在哪?
*選擇器的使用有問題?我換用 #id 選擇器,果然OK!但是理論上如上這種選擇器肯定是沒問題的!
*我又用 $(":input :text") ,錯誤! $(":input :eq(0)"); 錯誤! 妹的!問題到底在哪?
*此刻,手一賤,把:text與:first中的一個空格不小心刪掉,一運行,尼瑪,跑起來了!果斷再試用剛那
*幾個選擇器,全OK!經過多次測試,得出如下經驗:
*使用內部包含關系的組合選擇器時,它們之間不能加空格!$(":text :first)" 錯誤!$(":text:first)
**/ 正確!當使用層次關系的組合選擇器時,他們之間要有空格
checkUser();
});
</script>
</head>
<body>
<form>
<fieldset>
<legend>注冊頁面</legend>
用戶名<input type="text"> <br>
密碼<input type="password"><span> <br>
驗證密碼<input type="password"> <br>
email<input type="text" ><span> <br>
<input type="submit" value="注冊">
</fieldset>
</form>
</body>
</html>