我的前台是
<div id="while_html" style=" display:none" name="while_html"></div>这个div的值是js赋予的,我后台准备去取出来这个div的值,
protected void Button1_Click(object sender, EventArgs e)
{
string html = Request.Form["while_html"];
string html2 = while_html.InnerHtml;
}为什么这两种方法都取不到js赋予这个div的值呢
<div id="while_html" style=" display:none" name="while_html"></div>这个div的值是js赋予的,我后台准备去取出来这个div的值,
protected void Button1_Click(object sender, EventArgs e)
{
string html = Request.Form["while_html"];
string html2 = while_html.InnerHtml;
}为什么这两种方法都取不到js赋予这个div的值呢
哦,我源码里写了runat=“server”了,还是我上面说的毛病!
代码:
<div id="while_html" runat="server" style=" display:none" name="while_html"></div>
后台
while_html.InnerHtml ="";
或用Request.Form取值或者你写到隐藏域里 获取隐藏域控件 也要加runat="server"
后台用while_html.InnerHtml
或者request.form都取不到值,是空的!
你不可以先写这个,这个是在赋值啊,把这个while_html DIV里面的东西全都给赋成空了,你获取出来当然是空的了!!!!
123
</div> Response.Write(this.while_html.InnerHtml.ToString());
<%= str %>
</div>
public string str = "test";
protected void Page_Load(object sender, EventArgs e)
{ Response.Write(this.while_html.InnerText.ToString());
js赋值得话,后台取不到。
jS代码:
var hfIsDel = document.getElementById('<%=hfIsDel.ClientID %>');
hfIsDel.value ="1";
后台代码:
string strValue = hfIsDel.value;
string html2 = while_html.InnerHtml;这个方法如果要获取到要runat属性
但是楼主说的innerHTML是这样的“这个div的值是js赋予的,我后台准备去取出来这个div的值”,也就是说它不是asp.net应用程序生成的。
算不算表单控件不重要(实际上只要是表单里的html element就可以,我不把它叫做控件)。浏览器执行form提交时,仅仅提交value,不可能提交innerHTML给服务器的。是因为这个原因,才有人会考虑使用脚本把它写入另外一个html element的value里边。而不是因为“算表单控件”的问题。