Javascript 通过验证文本框值,应禁用复选框

Javascript 通过验证文本框值,应禁用复选框,javascript,html,Javascript,Html,我有一个文本框和一个复选框 我想要的是,当我在文本框中输入值并且值小于999时,复选框应该被禁用 下面是HTML和javascript代码,但它没有按预期工作。请帮我把这个修好 HTML Javascript var loadGroupNumber="0"; loadGroupNumber=document.getElementById("lgn").value; alert("LGN:"+loadGroupNumber); if(loadGroupNumber

我有一个文本框和一个复选框

我想要的是,当我在文本框中输入值并且值小于999时,复选框应该被禁用

下面是HTML和javascript代码,但它没有按预期工作。请帮我把这个修好

HTML


Javascript

  var loadGroupNumber="0";
    loadGroupNumber=document.getElementById("lgn").value;
    alert("LGN:"+loadGroupNumber);
    if(loadGroupNumber < "900")
    {
    document.getElementById("field1").disabled=true;

    }
var loadGroupNumber=“0”;
loadGroupNumber=document.getElementById(“lgn”).value;
警报(“LGN:+loadGroupNumber”);
如果(装载组编号<“900”)
{
document.getElementById(“field1”).disabled=true;
}

您的代码中有很多地方不正确:

  • 比较数字与比较字符串不同
  • id为“1”的元素不存在
  • validateLoadGroupNumber(obj)函数不存在
HTML建议:

<input name="lgnum" id="lgn" type="text" onkeydown="validateLoadGroupNumber(this)"/>
<input type="checkbox" id="field1" name="faAccount" />

此javascript代码应该工作得更好:

<script language="JavaScript">
function validateLoadGroupNumber(obj){
try {
    if(parseInt(obj.value, 10) < 999){
        document.getElementById("field1").disabled=true;
    }
    else{
        document.getElementById("field1").disabled=false;
    }
}
catch(exc){
    alert("only numbers pls");
}
}
</script>

函数validateLoadGroupNumber(obj){
试一试{
if(parseInt(对象值,10)<999){
document.getElementById(“field1”).disabled=true;
}
否则{
document.getElementById(“field1”).disabled=false;
}
}
捕获(exc){
警报(“仅限数字pls”);
}
}

document.getElementById(“1”)。已禁用,1应替换为field1。@Jaykishan:抱歉,我更改了它,实际上它的“field1”我错误地添加了“1”,但它仍然不起作用。你能尝试使用jQuery吗,它变得简单多了
<script language="JavaScript">
function validateLoadGroupNumber(obj){
try {
    if(parseInt(obj.value, 10) < 999){
        document.getElementById("field1").disabled=true;
    }
    else{
        document.getElementById("field1").disabled=false;
    }
}
catch(exc){
    alert("only numbers pls");
}
}
</script>