[英]jQuery .blur() event not firing
我有一個簡單的登錄表單,如下所示,附帶一個jQuery腳本。 我正在嘗試使用jQuery進行一些簡單的客戶端表單驗證。 但是,我似乎無法觸發模糊事件。 我想不出我做錯了什么,我嘗試過使用'.on('blur',fn(){})',但這也不起作用。 請幫忙!
這是我的HTML文件:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>DMIT 222 - Catalogue Project: Admin Login</title>
<link rel="stylesheet" type="text/css" href="../styles/divs.css" />
<link rel="stylesheet" type="text/css" href="../styles/fonts.css" />
<link rel="stylesheet" type="text/css" href="../styles/tags.css" />
<link rel="stylesheet" type="text/css" href="../styles/tables.css" />
<link rel="stylesheet" type="text/css" href="styles/forms.css" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="../scripts/loginFormValidation.js"></script>
</head>
<body>
<div id="wrapper">
<header>
<h1>Ship Catalogue</h1>
</header>
<div id="mainContent">
<form id="LoginForm" name="LoginForm" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<div class="FormRow"><label for="Username">Username:</label><input type="text" name="Username" id="Username" /><p id="userErrors"><?php echo $userErrors; ?></p></div>
<div class="FormRow"><label for="Password">Password:</label><input type="password" name="Password" id="Password" /><p id="passwordErrors"><?php echo $passwordErrors; ?></p></div>
<div class="FormRow"><input type="submit" name="Submit" value="Login!" /></div>
</form>
</div>
<footer>
<a href="http://www.logicanddesign.ca/">Site Developed by Logic & Design</a>
</footer>
</div>
</body>
</html>
這是loginFormValidation.js腳本:
$("#Username").blur(function(e){
alert();
if ($("#Username").val() == "") {
$("#userErrors").text("Username must be entered!");
}
});
$("#Password").blur(function(e){
if ($("#Password").val() == "") {
$("#passwordErrors").text("Password must be entered!");
}
});
你需要將你的事件包裝在jQuery的document.ready函數中:
$(document).ready(function() {
$("#Username").blur(function(e){
alert();
if ($("#Username").val() == "") {
$("#userErrors").text("Username must be entered!");
}
});
$("#Password").blur(function(e){
if ($("#Password").val() == "") {
$("#passwordErrors").text("Password must be entered!");
}
});
});
如果您添加一些內容以提醒,它可以工作。 JS引擎引發了一個錯誤,因為沒有參數調用了alert函數。 我還建議使用document.ready()
綁定事件
$(document).ready(function(){
$("#Username").blur(function(e){
alert("something");
if ($("#Username").val() == "") {
$("#userErrors").text("Username must be entered!");
}
});
});
示例: http : //jsfiddle.net/PfnGv/
在里面添加你的jquery模糊代碼
$(document).ready(function() { ...// your blur code here }
或者在頁面底部關閉body標簽,如:
<script type="text/javascript">
//your blur code
</script>
</body>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.