编辑: document.getElementById('submit').disabled='disabled';
如果我把它而不是,return false;
但由于某些原因,它也会在不使用用户名时禁用按钮。
以下是检查用户名可用性的基本脚本。
如果已使用用户名,如何防止提交表单?
理想情况下,我希望弹出一个 JS 警报框。
我试图将它添加到 JS 但没有奏效:
document.getElementById('submit').disabled
我也尝试添加onclick="return validate();"
到表单本身,但也没有运气:表单仍然可以提交。
HTML
<form id="edit" action="edit.php" method="post">
<fieldset>
<label>Username</label><input type="text" class="input" name="username"
id="username"/><span id="status"></span>
<button type="submit" id="submit" value="add">Save</button>
</fielset>
</form>
脚本
<script type="text/javascript">
$(document).ready(function() {
$("#username").change(function() {
var username = $("#username").val();
var msgbox = $("#status");
if (username.length >= 4) {
$("#status").html('<img src="images/gif/ajax-loading.gif">');
$.ajax({
type: "POST",
url: "ajax_check.php",
data: "username=" + username,
success: function(msg) {
if (msg == 'OK') {
msgbox.html('<img src="/images/yes.png">');
return true;
} else {
msgbox.html(msg);
return false;
}
}
});
} else {
$("#status").html('<img src="/images/no.png">too long!');
return false;
}
return false;
});
});
edit.php
并且ajax_check.php
只包含一些 SQL 查询。
此外,一些用户在他们的浏览器上禁用了 JavaScript,我该如何解决这个问题?