C#的TextBox的四種禁止編輯方法


前言

一般而言,Textbox中有兩個屬性可以對其進行防止編輯的設定,這是最基礎的知識,也是我要提出的前兩種方法。而后兩種方法實際為一種,但可以應用於不同環境中。

一、ReadOnly屬性

這樣設置,Textbox控件則限制不能輸入,但可以讀取已有文本,樣式也與正常使用的Textbox一致。

1、在前端設置Readonly為true,樣式如下:

 <asp:TextBox ID="TextBox1" runat="server" ReadOnly="true" Text="測試"></asp:TextBox>  

2、在后台設置Readonly為true,樣式如下:

TextBox1.ReadOnly = true;

二、Enabled屬性

設置此屬性會將Textbox控件變成反灰樣式,不可點擊。

1、在前端設置Enabled為false,樣式如下:

 <asp:TextBox ID="TextBox1" runat="server" Enabled="false" Text="測試"></asp:TextBox>  

2、在后台設置Readonly為true,樣式如下:

TextBox1.Enabled= false;

三、onfocus方法

設置JS的事件,onfocus事件指的的是光標移到到此控件,this.blur()是將光標移開,如此便能夠達到不能編輯的目的,代碼如下。

<asp:TextBox ID="TextBox1" runat="server" Text="測試" onfocus="this.blur();"></asp:TextBox>  

補充:設置TextModel樣式

使用CSS代碼,設置TextModel屬性。與上面方法結合,這樣設置的好處是在一些瀏覽器中不僅能實現不能編輯的目的,還能夠保證原有的"X"號存在,保留清除控件內容的功能。經檢測,在IE瀏覽器不支持此功能,但Google瀏覽器可以。

前端代碼如下:

<asp:TextBox ID="TextBox1" runat="server" Text="測試" TextModel="search" onfocus="this.blur();"></asp:TextBox>  

Css樣式如下:

<style>
    Input[type=search]::-webkit-search-cancel-button
    {
    -webkita-appearance: searchfield-cancel-button;
    }
</style>

四、onkeydown方法

設置onkeydown返回false,實際是使得控件不能由鍵盤輸入,保留刪除功能,同時可以通過剪切復制來刪除賦值。此事件進一步設定可以實現限制僅數字輸入或者僅字母輸入等功能。

前端代碼如下:

<asp:TextBox ID="TextBox1" runat="server" Text="測試" onkeydown="return false;"></asp:TextBox>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM