禁用预选复选框

时间:2014-06-10 08:44:53

标签: javascript asp.net checkbox registerstartupscript

我有这些代码行,根据预先选择的标记

选择复选框
if (objX.PreSelected)
{
    string js = "if(document.getElementById('" + CheckBoxId + "').checked==false) document.getElementById('" + CheckBoxId + "').click();";
    if (!Page.ClientScript.IsStartupScriptRegistered(CheckBoxId))
         Page.ClientScript.RegisterStartupScript(this.GetType(), CheckBoxId, js, true);
}

完成此操作后,我需要禁用该预选复选框。 我在下面试过但是没有用

string js = "if(document.getElementById('" + CheckBoxId + "').checked==false) {document.getElementById('" + CheckBoxId + "').click();document.getElementById('" + CheckBoxId + "').disabled ='disabled';}";

更新 - 我可以禁用该复选框,但问题是它没有发送回服务器。 我是asp.net编程的新手,请建议。任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

你需要用javascript做这个吗?否则你可以做类似的事情:

if (objX.PreSelected)
{
    checkBox.Checked = true;
    checkBox.Enabled = false;
}

checkBox.Checked = objX.PreSelected;
checkBox.Enabled = objX.PreSelected == false;

要使用JavaScript禁用CheckBox,您可以编写

document.getElementById('id').disabled = 'disabled';

document.getElementById('id').disabled = true;

无需同时执行.click()和.checked = true;