Textbox.Visible=False隱藏方式導致的問題


今天公司的正式環境有個功能不好使,但是測試環境沒有問題,經過和同事的研討,發現應該是我在寫代碼的時候把Textbox的visible屬性設置為false導致的。

當時的需求是需要在發郵件的時候加上“相關說明”,而“相關說明”的內容是由第一個發郵件的人填寫的,第二個人在接到郵件以后,登錄系統,發送第二封郵件,

郵件的“相關說明”是用第一個人的最后一次寫的“相關說明”,自己不寫“相關說明”。由於公用一個上傳,發郵件頁面,並且只有第一個人能夠看到“相關說明”的

文本框。因此,我把Textbox的Visible默認設置為false,第一個發郵件的時候再設置成TRUE。

程序在測試環境運行沒有問題,然而今天在正式環境運行的時候,卻出現了第二個人沒有獲取到第一個人的“相關說明”。

通過同事的幫忙排查,發現因為Textbox的visible被設置成了false,雖然可以賦值,可能由於不同瀏覽器的原因,沒有解析出來Textbox,無法取值,所以導致了沒有相關說明。

同事給出了用div的方法來隱藏和顯示

            <div id="mydiv" runat="server" style="display:none;">
                <asp:Label ID="LalExplain" Text="相關說明" runat="server" Visible="false" />
                <asp:TextBox ID="TxtBoxExplain" runat="server" Width="700px" TextMode="MultiLine"></asp:TextBox>
                <asp:Label ID="Label2" runat="server" ForeColor="Red"></asp:Label>
            </div>

后台用以下代碼來顯示

mydiv.Style.Value = "display.block";

以下是瀏覽器解析后的代碼

 <div id="mydiv" style="display:none;">
                
                <textarea name="TxtBoxExplain" rows="2" cols="20" id="TxtBoxExplain" disabled="disabled" class="aspNetDisabled" style="width:700px;">
1、信息查詢
2、系統說明</textarea>
                <span id="Label2" style="color:Red;"></span>
            </div>

通過這種方法,只是將Textbox不可見了,瀏覽器同樣可以解析出來。

 


免責聲明!

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



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