textarea控件,asp.net c#

PW2*_*PW2 50 c# asp.net

我正在使用textarea控件允许用户输入文本,然后将该文本放入电子邮件正文中.在后面的代码中,引用用户输入的语法是什么.我以为我可以使用"message.Body = test123.Text;" 但这是不被承认的.

aspx页面中的代码---

<textarea id="TextArea1" cols="20" rows="2" ></textarea>
Run Code Online (Sandbox Code Playgroud)

代码背后---

foreach (string recipient in recipients)
{         
  var message = new System.Net.Mail.MailMessage("sender@example.com", recipient);
  message.Subject = "Hello World!";         
  message.Body = test123.Text;                
  client.Send(message); 
} 
Run Code Online (Sandbox Code Playgroud)

ten*_*ete 146

您没有为文本区域使用.NET控件.添加runat="server"到HTML TextArea控件或使用.NET控件:

试试这个:

<asp:TextBox id="TextArea1" TextMode="multiline" Columns="50" Rows="5" runat="server" />
Run Code Online (Sandbox Code Playgroud)

然后在你的codebehind中引用它:

message.Body = TextArea1.Text;
Run Code Online (Sandbox Code Playgroud)

  • tentonipete对我来说是最好的答案,但我会添加Columns和Rows属性.例如,Columns ="40"Rows ="5". (5认同)

m0s*_*0sa 16

你需要runat="server"像这样使用:

<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>
Run Code Online (Sandbox Code Playgroud)

您可以将runat = server属性与任何标准HTML元素一起使用,然后在代码隐藏中使用它.


Ali*_*li 7

首先确保你runat="server"textarea标签中有这样的属性

<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>
Run Code Online (Sandbox Code Playgroud)

然后您可以通过以下方式访问内容:

string body = TextArea1.value;
Run Code Online (Sandbox Code Playgroud)