利用Attributes增加onBlur及onFocus,顯示欄位未輸入資料前的預設值
_Name = "ABC"
Name.Text = _Unnamed
Name.Attributes.Add("onBlur", "javascript: if (this.value=='') this.value='" & _Name& "';")
Name.Attributes.Add("onFocus", "javascript: if (this.value=='" & _Name& "') this.value='';")
0
意見
以電子郵件傳送這篇文章
BlogThis!
分享至 X
分享至 Facebook
標籤:
Javascript
有的時後某些欄位希望使用者不可以輸入特定的文字或符號。就可以使用 \b((?!>|<)\w)+\b
Ex:利用regularexpressionvalidato排除 大於 >及小於 < 兩個符號。
<asp:regularexpressionvalidator id="NameFormat" runat="server" cssclass="NormalRed" controltovalidate="txtName" display="Dynamic" validationexpression="\b((?!>|<)\w)+\b"></asp:regularexpressionvalidator>
就如文章所說初學的工程師真的不會考慮到編碼的方式及問題
特別是以前寫Windows Form 跳到Web Form。
當輸入的資料
Ex: 如果使用者在TextBox輸入<b>Test</b>
在HTML輸出時,會直接變成 Test <==他變粗體了
所以要利用Server.HtmlEncode轉回成原本輸入的純文字
Server.HtmlEncode(abc)
但在變為純文字時又會遇到一個狀況,那User真的按了一個斷行怎辨~~
利用Replace把他轉為真的斷行
Ex: 如果使用者在TextBox輸入
<b>Test</b><b>Test</b>
<b>Test2</b>
<b>Test3</b>
Server.HtmlEncode(abc).Replace(vbCrLf, "<br />")
參考資料:http://blog.miniasp.com/post/2008/11/Explain-web-related-encoding-decoding-method-in-detail.aspx
特別是以前寫Windows Form 跳到Web Form。
當輸入的資料
Ex: 如果使用者在TextBox輸入<b>Test</b>
在HTML輸出時,會直接變成 Test <==他變粗體了
所以要利用Server.HtmlEncode轉回成原本輸入的純文字
Server.HtmlEncode(abc)
但在變為純文字時又會遇到一個狀況,那User真的按了一個斷行怎辨~~
利用Replace把他轉為真的斷行
Ex: 如果使用者在TextBox輸入
<b>Test</b><b>Test</b>
<b>Test2</b>
<b>Test3</b>
Server.HtmlEncode(abc).Replace(vbCrLf, "<br />")
參考資料:http://blog.miniasp.com/post/2008/11/Explain-web-related-encoding-decoding-method-in-detail.aspx
跟上一篇一樣這個真的是一個非常麻煩的東西,在純數字欄位的時後判斷全形及半形時該如何處理。
最快的方式是讓User輸入的資料,全部轉為半形。
因為需求是要在資料輸入前先做好驗證,所以利用RangeValidator加上validationexpression去處理。
1.限制validationexpression="\d*"只能輸入數字。
<asp:textbox id="Word" runat="server" maxlength="6" size="12"></asp:textbox>
<asp:regularexpressionvalidator id="valWord" runat="server" controltovalidate="txtWordUser" display="Dynamic" validationexpression="\d*">
</asp:regularexpressionvalidator>
2.限制最大至最少的數字。
<asp:RangeValidator ID="valWordUserFormat" runat="server" display="Dynamic"
controltovalidate="txtWordUser" MinimumValue="1" MaximumValue="999999" Type="Integer"></asp:RangeValidator>
遇到一個非常麻煩的東西,User輸入的資料如果有全形及半形時該如何處理。
最快的方式是讓User輸入的資料,全部轉為半形。
全形轉半形
VbStrConv.Narrow :全形轉半形
Dim Word As String
Dim NewWord As String
Word = "ABC"
NewWord = StrConv(Word , VbStrConv.Narrow)
半形轉全形
VbStrConv.Wide:半形轉全形
Dim Word As String
Dim NewWord As String
Word = "ABC"
NewWord = StrConv(Word , VbStrConv.Wide)
參考資料:http://www.dotblogs.com.tw/hatelove/archive/2009/04/02/7810.aspx
最快的方式是讓User輸入的資料,全部轉為半形。
全形轉半形
VbStrConv.Narrow :全形轉半形
Dim Word As String
Dim NewWord As String
Word = "ABC"
NewWord = StrConv(Word , VbStrConv.Narrow)
半形轉全形
VbStrConv.Wide:半形轉全形
Dim Word As String
Dim NewWord As String
Word = "ABC"
NewWord = StrConv(Word , VbStrConv.Wide)
參考資料:http://www.dotblogs.com.tw/hatelove/archive/2009/04/02/7810.aspx