我在没有 runat="server" 的情况下在 asp.net 页面中设置了 html textarea,我需要在后面的代码中通过 C# 在字符串变量中设置文本
6 回答
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 检索值..
你可以看看这个线程
我认为它是一样的,希望它有帮助
您不能将值保存到代码隐藏文件中的变量中,然后在网络表单本身上通过某种方式引用变量,例如 <%= varName =>??
上面似乎需要做很多工作,只是为了引用一个您可以在 C# 中轻松设置的变量,然后拉入页面加载。
我猜你试图完成的是用服务器端的变量填充你的文本框,而不将 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
您可以使用 ViewData 在代码中设置数据,并可以按照上面链接中的说明在 html 中访问它们。