【发布时间】:2012-04-29 21:32:40
【问题描述】:
我在没有 runat="server" 的 asp.net 页面中设置了 html textarea,我需要在后面的代码中通过 C# 设置字符串变量中的文本
【问题讨论】:
-
然后添加
runat="server"。还不错;)
我在没有 runat="server" 的 asp.net 页面中设置了 html textarea,我需要在后面的代码中通过 C# 设置字符串变量中的文本
【问题讨论】:
runat="server"。还不错;)
将 TextMode 属性设置为 MultiLine 的 ASP.NET TextBox 控件将生成 Html TEXTAREA 控件。
因此,无需手动制作 Html TEXTAREA,您只需拖放一个 TextBox 控件并拥有:
<asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine"></asp:TextBox>
然后在你的代码后面:
TextBox2.Text = "... blah blah blah...";
【讨论】:
使用 Request.Form Collection http://msdn.microsoft.com/en-us/library/ms525985(v=vs.90).aspx 检索值..
【讨论】:
HttpRequest.Form 集合是只读的(出于逻辑原因)。
你可以看看这个thread
我也这么认为,希望对你有帮助
【讨论】:
我猜你的尝试是用服务器端的变量填充你的文本框,而不将 runat="server" 设置为控件。
您可以使用 ajax 和简单的 jquery 来做到这一点。
假设你在 YourPage.aspx 上有这个
<input id="txtMyTextBox" type="text" />
接下来是一个简单的jquery
function getMytextValue() {
$.ajax({
url: "/MainPage.aspx/YourServerSideFunction",
type: "post",
data: "{ }",
dataType: "json",
contentType: "application/json;charset=utf-8",
success: function (data) {
//Get your value from JSON data.d;
$('#txtMyTextBox').val(data.d);
},
error: function (request, status, err) {
//Do something here for error;
}
});
}
现在只需在您喜欢的任何事件上调用 jquery。
PS:别忘了在你的代码后面创建一个[WebMethod]。
希望对您有所帮助! :D
【讨论】:
您不能将值保存到代码隐藏文件中的变量中,然后在网络表单本身上通过某种方式引用变量,例如 ??
上面的工作似乎很多,只是为了引用一个您可以在 C# 中轻松设置的变量,然后拉入页面加载。
【讨论】:
您可以使用 ViewData 在代码中设置数据,并可以按照上面链接中的说明在 html 中访问它们。
【讨论】: