如何禁用基于 ajax 错误响应的元素


How to disable an element based on ajax error respond

我已经form了单个输入字段name和jquery,我在提交之前检查了名称的可用性,如果未通过检查,它会给出错误消息,如果通过检查,它会给出消息correct

现在我的问题我想知道是否可以调整此代码,以便在未通过可用性检查的情况下禁用submit

或者其他什么,以便在没有通过可用性检查时阻止单击提交按钮。

我正在使用以下内容

表单代码

<SCRIPT type="text/javascript">
$(document).ready(function(){
$("#name").change(function() {
var usr = $("#name").val();
if(usr.length >= 4){
$("#status").html('<img src="loader.gif" align="absmiddle">&nbsp;Checking availability...');
    $.ajax({
    type: "POST",
    url: "check.php",
    data: "name="+ usr,
    success: function(msg){
   $("#status").ajaxComplete(function(event, request, settings){
    if(msg == 'OK'){
        $("#username").removeClass('object_error'); // if necessary
        $("#username").addClass("object_ok");
        $(this).html('&nbsp;correct');
    }else{
        $("#username").removeClass('object_ok'); // if necessary
        $("#username").addClass("object_error");
        $(this).html(msg);
    }
   });
 }
  });
}else{
    $("#status").html('<font color="red">The name should have at least 4 characters.</font>');
    $("#username").removeClass('object_ok'); // if necessary
    $("#username").addClass("object_error");
    }
});
});
</SCRIPT>
<div id='myform'>
Name <input type="text" name="name" id="name"><div id="status"></div>
<br />
<input id="submit" type="submit" name="Submit" value="Submit">
</div>

~ 感谢您的帮助

您可以简单地禁用提交输入元素:

$("#submit").prop('disabled', true);