前端大概是这样
<script type="text/javascript" language="javascript">
function append_child(listID) {
var list = document.getElementById(listID);
var li = document.createElement("li");
li.innerHTML = '<div>hello world</div>';
list.appendChild(li);
}
</script>
<ul id="list" runat="server"></ul>
<input type="button" onclick="append_child('<%=list.ClientID %>');" value="添加" /><br />
<asp:Button ID="Button1" runat="server" Text="确认提交" onclick="Button1_Click" />多点几下"添加"按钮,浏览器端正常工作,但提交后在Button1_Click方法内,list对应的innerHTML却是"",求解
<script type="text/javascript" language="javascript">
function append_child(listID) {
var list = document.getElementById(listID);
var li = document.createElement("li");
li.innerHTML = '<div>hello world</div>';
list.appendChild(li);
}
</script>
<ul id="list" runat="server"></ul>
<input type="button" onclick="append_child('<%=list.ClientID %>');" value="添加" /><br />
<asp:Button ID="Button1" runat="server" Text="确认提交" onclick="Button1_Click" />多点几下"添加"按钮,浏览器端正常工作,但提交后在Button1_Click方法内,list对应的innerHTML却是"",求解
解决方案 »
- Winform程序中对TextBox数据绑定的空值校验问题
- 如何打开上传的word或execl文件
- 如何控制WORD的工具栏,用IE控件创建的WORD对象,急
- 马上过十一了,救命问题,那位大哥给我来个正则表达式?
- 谁要买电视盒????进来看看
- 搜索难点---难点!!!
- 线程刷新WebBrowser,如何才能进入DocumentCompleted事件
- datagrid 如何实现上下文菜单操作?
- 5555~~~~~~~~~,为什么我的字符串后面总是带着许多"/0"
- Stream分段写入提示“请求被中止: 请求已被取消”
- 怎么重绘MDI窗体区域
- c# webBrowser 模拟点击网页按钮,没有id,name
你必须放在隐藏表单控件如<input type=hidden name=x>里面才能提交到服务器端
不是很明白,比如<textarea runat="server" id="ta"></textarea>
提交后服务器端ta的内容就变了
如果要改的话,应该怎么办呢
这是服务器控件 HtmlTextArea。你可以看看msdn,知道这是什么。
<input type="button" onclick="append_child('<%=list.ClientID %>');" value="添加" /><br />
<asp:Button ID="Button1" runat="server" Text="确认提交" onclick="Button1_Click" />
前两行被asp.net解析为服务器控件LiteralControl,其Text属性是这两行字符串。然后第三行被解析为Button控件。也就是说这是两个服务器控件。其中第一个只是字符串而已,就算你胡乱写也一样。有些人把这叫做什么“html控件”,他是分不清楚什么是浏览器端html标签,什么是服务器控件,说了一个四不像的概念。
那么这应该被asp.net解析为三个服务器控件,第一个大概是一个 HtmlGenericControl 类型的控件,然后是一个 LiteralControl 控件,然后是一个Button控件。asp.net要多设计页面上每一行都解析为服务器控件,然后才进行页面操作,例如Render而输出html。其中对于你随便写字符串,例如就算你把 <input ....>胡乱写成了<inputa ....>它也在LiteralControl控件中原样输出,当作普通的字符串处理。这种东西没有什么内涵,你也别想着像其它服务器控件一样有让你编程省事的(例如可以得到InnerXXXX属性的)设计内涵。