2

次のコードを使用して、コードビハインドからテキストエリア値を取得しようとしています。

  HtmlTextArea bodytextarea = new HtmlTextArea();
    bodytextarea = (HtmlTextArea)(this.FindControl("codearea"));
    string txtbod = bodytextarea.Value;

デバッグすると、bodytextarea が null であるという null 参照例外が発生します。私のテキストエリアは runat="server" ではなく、サーバー側で作成したくないことに言及する必要があります。何か助けはありますか?

4

2 に答える 2

6

あなたはあなたに追加する必要がありrunat="server"ます<TextArea id="myTextArea" runat="server" />

このように、テキストエリアのIDを使用するだけで、コードビハインドの値を直接取得できます。


また、サーバー側を使用したくない場合は、Jqueryを使用して値を取得[webmethod]し、コードビハインドにメソッドを作成して、Jqueryがそのメソッドを呼び出して値を渡すことができるようにする必要があります。


または単にstring data = request["codearea"];

于 2012-07-23T09:01:00.443 に答える
1

runat = "server"コントロールでない場合は、httpコンテキストから値を取得する必要があります。textareaの値は、(ほとんどの場合)POST変数またはGET変数として扱われます。

参照:C#/ASP.NETでPOSTデータを取得する

POST変数の取得

公式MSDN: http: //msdn.microsoft.com/en-us/library/system.web.httpcontext.aspx

于 2012-07-23T09:01:45.560 に答える