NeedCareHtml += dt_NeedCare.Rows[i]["SI_Name"].ToString() + ":" +
"<input type=\"text\" runat=\"server\" style=\"width:50px\" maxlength=\"32\" id=\"" +
"needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() +"\""+
" name=needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() + "\"/>" + "人、";
这个是小弟动态生成 html文件的代码,然后用<%=NeedCareHtml %>把html文件绑定到前台显示, 现在的问题是 如何在.cs文件里面获得 这个动态生成的html input的值???
我用了:this.FindControl(id的值)、Request[name值];都不能获得?
强烈期待高手给与指点、
"<input type=\"text\" runat=\"server\" style=\"width:50px\" maxlength=\"32\" id=\"" +
"needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() +"\""+
" name=needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() + "\"/>" + "人、";
这个是小弟动态生成 html文件的代码,然后用<%=NeedCareHtml %>把html文件绑定到前台显示, 现在的问题是 如何在.cs文件里面获得 这个动态生成的html input的值???
我用了:this.FindControl(id的值)、Request[name值];都不能获得?
强烈期待高手给与指点、
解决方案 »
- 即用JS又用验证控件,怎么用JS判断页面上的验证控件都通过了?
- 关于用GridView动态显示自定义模板列的问题。
- 如何让执行指定文件
- 请问为什么在cs文件中写了using。。。之后在aspx里要写程序还要using。。。???
- IIS浏览ASP.NET文件出现RUNTIME ERROR错误怎么解决啊??
- 好奇怪的问题啊。。哪位高手帮忙解决。。。
- treeview问题
- 为什么这里的 Request.Form["txtGrade"] == "" ???
- 怎样获取客户端的用户登陆信息?
- 字符串分割,并获得子字符串问题!
- 谁用过ASP.NET AJAX Controls “Gauges and Dashboards”?
- 非常疑惑的一个问题,帮忙看看。
解决方法:1、用Js获取后通过Ajax传递
2、通过后台new TextBox()的方法添加,保存TextBox的ID,通过TextBox所在容器来FindControl(TextBox的ID)来获取
没错 可是我生成的就是 html啊 现在的问题就是怎样获得 生成的html 控件的value值
HtmlTableCell myCell = new HtmlTableCell();
TextBox myBox = new TextBox();
myBox.Width = 150;
myBox.ID = "txt_"+ rowId.Trim(); //rowid指的是行号,这样可以避免id值重复
myCell.Controls.Add(myBox);点击按钮的事件方法里写入如下代码,就可以获取到TextBox的值:
TextBox myDataBox = (TextBox)tbData.Rows[i].Cells[1].FindControl(String.Format("txt_{0}", i.ToString())); //tbData指的是动态增加的表格 i指的是行号
NeedCareHtml += dt_NeedCare.Rows[i]["SI_Name"].ToString() + ":" +
"<input type=\"text\" runat=\"server\" style=\"width:50px\" maxlength=\"32\" id=\"" +
"needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() +"\""+
" name=needcare_" + dt_NeedCare.Rows[i]["SI_VALUE"].ToString() + "\"/>" + "人、";
这样写是没有错的 不知道大家注意到没有 这个地方name=needcare_" name属性少了一个"双引号 所以在用Request的时候是找不到的 改正之后就可以正确的获得text的值了
谢谢大家了!!!
<%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
String[] name = { "A", "B", "C" };
String NeedCareHtml = "";
for (int i = 0; i < name.Length; i++)
{
NeedCareHtml += name[i] + ":" + "<input type=\"text\" style=\"width:50px\" maxlength=\"32\" name='needcare" + i.ToString() + "'/>" + "人、";
}
Literal1.Text = NeedCareHtml + "<input type=hidden name=count value='" + name.Length + "'>";
}
} protected void Button1_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(Request.Form["count"]);
for (int i = 0; i < count; i++)
{
Response.Write("<li>输入的值:needcare_" + i + " = " + Request.Form["needcare" + i]);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="得到" />
</form>
</body>
</html>
var count=0;
function AddTextBox()
{
var div=document.getElementById('div');
div.insertAdjacentHTML("beforeEnd","<input type='text' id='txt"+count+"' name='txt"+count+"' /><br>");
count++;
}
function SetValue()
{
document.getElementById('<%=hidCount.ClientID %>').value=count;
}
</script>
public partial class TextBox : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
hidCount.Value = "0";
}
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
List<string> l = new List<string>();
int count = 0;
int.TryParse(hidCount.Value, out count);
for (int i = 0; i < count; i++)
{
l.Add(string.IsNullOrEmpty(Request.Form["txt" + i.ToString()]) ? null : Request.Form["txt" + i.ToString()]);
}
StringBuilder sb = new StringBuilder();
sb.Append("<script>document.getElementById('div').innerHTML=\"");
for (int i = 0; i < l.Count; i++)
{
sb.Append("<input type='text' id='txt" + i + "' name='txt" + i + "' value='" + (l[i] == null ? "" : l[i]) + "' /><br>");
}
sb.Append("\";count=" + hidCount.Value + ";</script>");
ClientScript.RegisterStartupScript(GetType(), "AddTextBox", sb.ToString());
}
}
取值
document.get..(隐藏域).value
this.id