禁用/启用按钮

时间:2011-07-08 06:44:41

标签: javascript ajax

我的PHP文件中有一个提交按钮,如下所示。

 <input type="submit" name="submit" value="submit" disabled="true" />

现在我使用请求对象

发送异步请求
document.getElementById("username").onblur=function(){ 
username(this.value);
 };

function username(value)
{
request = createRequest();
if(request==null) {
alert("Unable to create request");
return;
}
var url= "sign_up.php?value=" +
escape(value);
request.open("GET",url,true);
request.onreadystatechange = displayDetails;
request.send(null);
}
function displayDetails() {
if (request.readyState == 4) {
if (request.status == 200) {
checked = document.getElementById("check");
checked.innerHTML = request.responseText;
document.getElementById("submit").disabled="false";
}
}
} 

这里基本上是检查用户名的可用性,现在我启用提交按钮,如果有用户名enteres。但它确实没有启用按钮。有人可以告诉我为什么吗?

3 个答案:

答案 0 :(得分:1)

除去引号,你所做的是将字符串“false”分配给HTML元素的disabled属性。将最后一行更改为:

document.getElementById("submit").disabled = false;

答案 1 :(得分:0)

禁用:

document.getElementById("submit").setAttribute('disabled', 'disabled');

启用:

document.getElementById("submit").removeAttribute('disabled');

答案 2 :(得分:0)

jquery verison

$("#username").blur(function(){
    $("#submit").attr("disabled","disabled");
    $.ajax({
        method: "GET",
        dataType: "html",
        url: "sign_up.php",
        data: {
            cmd: "check_username",
            value: $(this).val()
        },
        success: function(data){
            $("#check").html(data);
            $("#submit").removeAttr("disabled");
        },
        error: function(){
            $("#check").html("ajax error");
            $("#submit").removeAttr("disabled");
        }
    });
});