.net开发中的几个小问题
第一个,将TextBox设为只读后不能取值
解决方法:不能在属性中直接给TextBox设为只读,可以在后台代码中用如下方法设为只读,这样就能取到值
this.txtCommonEnd.Attributes["ReadOnly"] = "readonly";
第二个,在页面加载时给checkBox赋值,但后面checkBox改变状态后,不能取到值
有两种方法可以解决:
A:可以在加载的代码写到if(!Page.IsPostBack){}里面可以解决问题.
B:如果是单个checkBox(不是checkBoxList),可以用如下代码得到改变后的值.
int a= Request.Form["chkAdd"]=="on":1?0;
很奇怪,但实际上的确如此.
C:如果是checkBoxList只能用第一个方法了.
第三个,日期的正则表达式,这个是在网上搜的,积累一下,也许以后用的着(格式:yyyyMMdd)
static string patter = @"^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229)$";
第四个:javascript怎么取得服务器控件的ID
解决方法:如服务器控件ID为txtAddress,则如下取得document.getElementById("<%=this.txtAddress.ClientID%>");
但这种方法不能专门写到js文件中,如果单独写成js文件,会找不到.
第五个:C#操作clob数据时,传参数时不能直接用键/值对的方法,必须要说明数据类型如下:
param[3] = new OracleParameter("inContent", OracleType.Clob);
param[3].Value = news.Content;
第六个:C#操作Oracel存储过程如果有返回值有字符类型,必须注明字符长度.