我正在處理asp.net中的某些事情,該事情要求允許用戶更改文本區域內的信息內容。會發生的是,我通過獲取外部.txt,.html或.rtf文件中的信息來設置文本區域內容,然後使用innerHtml將其設置到文本區域中。使用innerHtml設置後獲取textarea內容
至於檢索數據,我也使用innerHtml在頁面後面的.cs文件中執行此操作。問題是,當我嘗試這樣做時,即使我已經替換了每一行文本,我也會恢復之前設置的內容。例如,如果我原先設置了「這是最初的文本」,那麼之後將它全部替換爲「新文本」,innerHtml將僅僅讓我回到「這是最初的文本」。
是否有另一種獲得新文本或獲得innerHtml做我想要的方式的方法?
編輯:忘了包括代碼。
在代碼的ASPX的一面,我只是有一個簡單的文本區域,
<textarea id="TextArea1" cols="80" rows="10" runat="server"></textarea>
,並在aspx.cs側,
protected void Page_Load(object sender, EventArgs e)
{
ces = new ContentEditorService.ContentEditorService();
strRtfDir = Server.MapPath("Testfile.rtf");
string strContents = ces.loadEditorContents(strRtfDir);
TextArea1.InnerText = strContents;
}
其中CES加載單獨的.cs文件,用於加載和保存文本。
至於獲取內容,我使用
protected void Button1_Click(object sender, EventArgs e)
{
string strTxtArea = TextArea1.InnerHtml;
System.Diagnostics.Debug.WriteLine(strTxtArea);
//ces.saveEditorContents(strContents, strRtfDir);
}
它獲取內容並打印出來在Visual Studio中,現在調試窗口只是爲了看看我設法修改文本。
顯示一些代碼,HTML和C# – codingbiz
沒有看到任何代碼,我會假設你正在填補在頁面加載textarea的沒有這個加載代碼 是'如果(!Page.IsPostBack){//加載代碼}' – peroija