JavaScript Readonly问题

时间:2011-05-20 06:39:11

标签: javascript javascript-events

我在使用JavaScript只读字段时遇到问题。我有一个文本框,我正在阅读。

 if(val == true)
{    
    ddlCnt.value=objRec.iCntId;
    tAdd1.value=objRec.sAddress1;        
    tAdd2.value=objRec.sAddress2;        
    tCity.value=objRec.sCity;
    tState.value=objRec.sState;
    tZip.value=objRec.sZip;

    //tAdd1.disabled = tAdd2.disabled = tCity.disabled = tState.disabled = tZip.disabled = ddlCnt.disabled = true;
    //tAdd1.disabled = tAdd2.disabled = tCity.disabled = tState.disabled = tZip.disabled = ddlCnt.disabled = true;
    tAdd1.setAttribute("readonly", true);
    tAdd2.setAttribute("readonly", true);
    tCity.setAttribute("readonly", true);
    tState.setAttribute("readonly", true);
    tZip.setAttribute("readonly", true);
}

工作正常。 现在停用我使用的只读属性

else
{    
    tAdd1.value = tAdd2.value = tCity.value = tState.value = tZip.value = "";        
    //tAdd1.disabled = tAdd2.disabled = tCity.disabled = tState.disabled = tZip.disabled = ddlCnt.disabled = false;
    ddlCnt.value="-1";
    vsRec.innerHTML='';     
    tAdd1.setAttribute("readonly", false);
    tAdd2.setAttribute("readonly", false);
    tCity.setAttribute("readonly", false);
    tState.setAttribute("readonly", false);
    tZip.setAttribute("readonly", false);

    //vsRec.style.visibility='hidden';             
}

但它根本不起作用。任何人都可以帮助我摆脱这个问题或任何可以帮助我很多的建议或提示(以及为什么这不起作用?)。

4 个答案:

答案 0 :(得分:6)

您需要使用removeAttribute删除该属性。

tAdd1.removeAttribute("readonly");
tAdd2.removeAttribute("readonly");
tCity.removeAttribute("readonly");
tState.removeAttribute("readonly");
tZip.removeAttribute("readonly");

答案 1 :(得分:3)

您需要删除readonly属性,例如:

tAdd1.removeAttribute("readonly");

答案 2 :(得分:3)

readonly不是true / false属性,它是present / not-present属性。您需要删除该属性,而不是将其设置为false。

答案 3 :(得分:3)

readonly属性的存在会导致输入框变为只读,而不是将其设置为true或false。删除属性。