input 框的只讀屬性: ?readonly
在頁面中直接添加為只讀時,可在input中直接添加 ? readonly="readonly",但是如果想通過點擊按鈕來改變的話,需要通過js(或jquery)來實現。
最近一次使用這個,終于發現了以前寫這個js控制的時候為什么總是那么郁悶了,原來,js ?在對于readonly、disabled等屬性設置時,有一個小bug(至少我是這么認為):首先,document.getElementById("id").readonly = "true"; ?設置input為只讀,但是,當通過document.getElementById("id").readonly="false" ?來去掉只讀屬性時,沒有作用,此時,需要把 ?false ?外面的引號給去掉js語句才能正常工作。
附:
1. jquery ?通過id屬性設置與取消只讀屬性
設置只讀:$("#id").attr("readOnly","true");
取消只讀:$("#id").attr("readOnly",false);
2. jquery ?批量設置與取消只讀屬性
/* ??id為sa的div中,所有input框 ? */
設置只讀:$("#sa input").attr("readOnly","true");
取消只讀:$("#sa input").attr("readOnly",false);