C# 如何引用HTML的输入<;textarea>;代码隐藏中的控制?

C# 如何引用HTML的输入<;textarea>;代码隐藏中的控制?,c#,html,asp.net,C#,Html,Asp.net,我使用textarea控件允许用户输入文本,然后将文本放入电子邮件正文中。在代码隐藏中,引用用户输入的语法是什么?我想我可以使用message.Body=test123.Text但无法识别 HTML: 代码隐藏: foreach(收件人中的字符串收件人) { var message=new System.Net.Mail.MailMessage(“sender@example.com“,收件人); message.Subject=“你好,世界!”; message.Body

我使用textarea控件允许用户输入文本,然后将文本放入电子邮件正文中。在代码隐藏中,引用用户输入的语法是什么?我想我可以使用
message.Body=test123.Text但无法识别

HTML:


代码隐藏:

foreach(收件人中的字符串收件人)
{         
var message=new System.Net.Mail.MailMessage(“sender@example.com“,收件人);
message.Subject=“你好,世界!”;
message.Body=test123.Text;
客户端。发送(消息);
} 

您应该引用textarea ID并将属性包含到

什么是
test123



您的文本区域没有使用.NET控件。将
runat=“server”
添加到HTML文本区域控件或使用.NET控件:

试试这个:

<asp:TextBox id="TextArea1" TextMode="multiline" Columns="50" Rows="5" runat="server" />

您需要像这样使用
runat=“server”

<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>


您可以对任何标准HTML元素使用runat=server属性,然后从codebehind使用它。

Missed property
runat=“server”
或在code-use
Request.Params[“TextArea1”]
首先确保在
textarea
标记中有
runat=“server”
属性,如下所示

<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>

这仍然不起作用,因为runat=“server”不在html控件上Tentonipete为我提供了最佳答案,但我会添加Columns和Rows属性。例如,Columns=“40”Rows=“5”。
<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>
<textarea id="TextArea1" cols="20" rows="2" runat="server"></textarea>
string body = TextArea1.value;