在.net中,对Textbox控件设置只读属性时如果用下面的方式
TextBox1.ReadOnly = true;
可以看到页面上的TextBox的确不能编辑了,但是在后台代码里却也无法取到TextBox.text了,取到的是null,
正确的做法时设置TextBox的本地属性,contentEditable,方法如下
TextBox1. Attributes["contentEditable"] = "false"; //注意后面的false是字符串
试一下,这下不能编辑了但是后台一样可以取到TextBox的值。
另外补充一点:这个属性在FF下不起作用!
如果要在FF下实现类似功能:请参考下列代码(本人没有测试过),转自http://topic.csdn.net/t/20061118/20/5168309.html
FF不支持,下面的兼容IE,FF,Opera
<iFrame id="jia" src="about:blank"></iFrame>
<script>
window.onload = function(){
var jia = document.getElementById("jia");
jia.contentWindow.document.designMode="on";
jia.contentWindow.document.contentEditable=true;
jia.contentWindow.document.open();
jia.contentWindow.document.write("<html><head></head><body></body></html>");
jia.contentWindow.document.close();
}
</script>
原帖地址:http://blog.csdn.net/roden/archive/2007/11/17/1889499.aspx