你好我有一個簡單的表單來驗證我想做一個客戶端驗證可以說我的表單只有一個字段的名稱我想檢查名稱長度是否在5到20個字符之間如果是的話沒問題,數據將被髮送到服務器,然後應用服務器端驗證;但是,如果不是,那麼錯誤消息將顯示在輸入字段旁邊的範圍內,表示它必須是5到20個字符。問題是當我點擊提交按鈕它顯示的結果不到一秒鐘,然後它會導致提交按鈕重新加載頁面,這也意味着如果我已經包括了我的服務器端驗證,它也將被處理,因爲輸入數據已經發送,所以我怎樣才能停止提交按鈕從發送數據到服務器並重新加載頁面而不禁用按鈕。如何在不禁用JQuery按鈕的情況下停止提交表單?
這裏是我的示例代碼
<!doctype html>
<html>
<head>
<title>form validation</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script>
$(document).ready(function() {
$("#submit").click(function(){
myfunction();
});
function myfunction()
{
name = $("#user").val();
nameError = $(".error").first();
myError = "";
if(name.length < 5 || name.length > 20)
myError += "length should be between 5 and 20 ";
else
myError += "ok"
nameError.html(myError);
}
});
</script>
<style>
.error
{
color : red;
text-transform: capitalize;
margin-left: 20px;
}
</style>
</head>
<body>
<form method="post" action="">
NAME : <input type="text" name="user" id="user"><span class="error"></span><br />
<input type="submit" value="Submit" id="submit">
</form>
</body>
</html>
返回真/從 「myfunction的」 假並檢查按鈕等 –