這是我的代碼。檢查表單上是否存在用戶名提交
的.js
$(document).ready(function() {
$("#username").focusout(function() {
$.ajax({
type:'post',
url:site_url()+'/client/checkUserName',
data:{'username':$("#username").val()},
dataType:'json',
success:function(result){
if(result != 'false'){
$('#message').text('Username exists');
}
}
});
});
的.html
<form id='form1' method="post">
<input type="text" name="username" id="username"/>
<span id="message" style="color:red"></span>
<input type="submit" value="submit" id="regis" class="btn"/>
</form>
及其對事件的內容工作的罰款。 如果用戶名存在,如何使表單不提交?
假設有形式的隱藏字段說
<input type="text" hidden id="type" value="<?php echo $type;?>">
然後如果隱藏字段,然後,如果已經存在與否的用戶名neednot檢查存在的價值。
我不確定。你能保證在任何干預事件(如表單提交)之前處理異步ajax響應嗎? –
我們可以在頁面加載時默認禁用它。但當然我們需要額外的服務器檢查提交。 –
我不確定這會起作用。用戶可以輸入一些不太可能的用戶名(即垃圾郵件)。聚焦時,腳本會檢查名稱並批准它,取消提交時的禁用。用戶然後可以編輯名稱,並立即按提交。有可能得到像這樣的工作,但有太多邊緣案例,它似乎非常脆弱。 –