TextBox tb = new TextBox();
tb.ID = tePOS.ToString();
this.Panel1.Controls.Add(tb);我这么写了一个 但是只能点一次 点第二次就不生成了 请问大家 有什么办法 小弟菜
tb.ID = tePOS.ToString();
this.Panel1.Controls.Add(tb);我这么写了一个 但是只能点一次 点第二次就不生成了 请问大家 有什么办法 小弟菜
這是什麼?
function addTextBox()
{
document.getElementById("container").innerHTML += "<input type='text' /><br/>";
}
</script><div id="container">
</div>
int Count
{
get
{
object o = ViewState["Count"];
return o == null ? 0 : Convert.ToInt32(o);
}
set
{
ViewState["Count"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
for (int i = 0; i < Count; i++)
{
TextBox tb = new TextBox();
tb.ID = "TextBox" + i;
Panel1.Controls.Add(tb);
}
} protected void Button1_Click(object sender, EventArgs e)
{
Count++;
TextBox tb = new TextBox();
tb.ID = "TextBox" + Count;
Panel1.Controls.Add(tb);
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript">
var i=0;
function addtext()
{
var div1=document.getElementById("div1");
div1.innerHTML=div1.innerHTML+i+":<input type='text' id='"+i+"'><input type='checkbox' value=''/><br/>";
i=i+1;
}
function viewtext()
{
var div2=document.getElementById("div2");
var text1=document.getElementById("TextBox1");
for(var j=0;j<i;j++)
{
var text=document.getElementById(j+"");
div2.innerHTML=div2.innerHTML+text.value+"<br/>";
text1.value=text1.value+text.value+"<BR/>";
}
}
</script>
</head>
<body>
<form runat="server" id="oye">
<input type="button" value="add text" onClick="addtext()">
<div id="div1"></div>
<input type="button" value="view" onClick="viewtext()">
<div id="div2" runat="server"></div>
<asp:TextBox ID="TextBox1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"
%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<style type="text/css">
<%--body
{
background-image: url(images/Energy Bliss.jpg);
}--%>
</style>
<script language="javascript" type="">
function panelview()
{
var divpanel=document.getElementById("div1");
// var panel=document.getElementById("Panel1");
// panel.style.display="block";
divpanel.style.display="block";
// var button=document.getElementById("Button2");
var str="";
var address="";
var i=0;
while(i<10)
{
address="address"+i;
var num1=i+1;
var num2=i+2;
var num3=i+3;
var num4=i+4;
var num5=i+5;
str=str+"<table><tr><td><input id='address"+num1+"' type='button' value='"+num1+"' onclick='addtext("+num1+")'/></td><td><input id='address"+num2+"' type='button' value='"+num2+"' onclick='addtext("+num2+")'/></td><td><input id='address"+num3+"' type='button' value='"+num3+"' onclick='addtext("+num3+")'/></td><td><input id='address"+num4+"' type='button' value='"+num4+"' onclick='addtext("+num4+")'/></td><td><input id='address"+num5+"' type='button' value='"+num5+"' onclick='addtext("+num5+")'/></td><td><a id='address"+num1+"'href='#' onclick='addtext("+num1+")'>"+num1+"</a></td><td><a id='address"+num1+"'href='#' onclick='addtext("+num1+")'>"+num1+"</a></td></tr></table><br/>";
i=num5;
}
divpanel.innerHTML=str;
}
function addtext(i)
{
var button=document.getElementById("address"+i);
var text=document.getElementById("Text1");
text.value=button.value;
var divpanel=document.getElementById("div1");
divpanel.style.display="none";
}
function viewtext()
{
var text=document.getElementById("Text1").value;
alert("你选择的是:"+text);
}
</script>
</head>
<body>
<%-- <asp:LinkButton ID="LinkButton1" runat="server" Text="111" OnClick="LinkButton_Click"></asp:LinkButton>--%>
<form id="form1" runat="server"><asp:ScriptManager id="ScriptManager1" runat="server">
</asp:ScriptManager>
<table>
<tr>
<td>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Add" />
<asp:Button ID="Button3" runat="server" OnClick="Button3_Click" Text="add one" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="View" />
</td>
<td rowspan="2">
<asp:Table ID="Table1" runat="server">
</asp:Table>
<asp:Label ID="Label2" runat="server"></asp:Label>
</td>
</tr>
<tr>
<td>
<table>
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<tr>
<td>
<asp:Label ID="Label1" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "SelectID") %>'></asp:Label>
</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "SelectContent")%>'></asp:TextBox>
</td>
<td>
<INPUT type="checkbox" value='<%#DataBinder.Eval(Container.DataItem, "SelectID")%>' id="Checkbox1" runat="server">
</td>
</tr>
</ItemTemplate>
</asp:DataList></table>
</td>
</tr>
</table>
<asp:TextBox ID="TextBox3" runat="server" TextMode="Password" autocomplete="off" ></asp:TextBox>
<asp:Label ID="TextBox2_HelpLabel" runat="server" />
<ajaxToolkit:PasswordStrength ID="PasswordStrength2" runat="server" TargetControlID="TextBox3"
DisplayPosition="RightSide"
StrengthIndicatorType="BarIndicator"
PreferredPasswordLength="15"
HelpStatusLabelID="TextBox2_HelpLabel"
BarIndicatorCssClass="BarIndicator_TextBox2"
BarBorderCssClass="BarBorder_TextBox2"
MinimumNumericCharacters="1"
MinimumSymbolCharacters="1"
TextStrengthDescriptions="Very Poor;Weak;Average;Strong;Excellent"
RequiresUpperAndLowerCaseCharacters="true" />
</form>
</body>
</html>
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using accp.zhaoxiaochun.Model;
using accp.zhaoxiaochun.BLL;public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
//this.DataGrid1.Items[0].FindControl("DataList1");
//if (this.Panel1.Attributes["style"].Equals("block"))
//{
// for (int i = 0; i < 10; i++)
// {
// Label label = new Label();
// label.Text = " ";
// LinkButton linkbutton = new LinkButton();
// linkbutton.Text = i + "";
// this.Panel1.Controls.Add(linkbutton);
// this.Panel1.Controls.Add(label);
// linkbutton.Click += new EventHandler(linkbutton_Click);
// }
//}
} //public void linkbutton_Click(object sender, EventArgs e)
//{
// this.Text1.Value = ((LinkButton)sender).Text;
// //throw new Exception("The method or operation is not implemented.");
//}
//protected void Button1_Click(object sender, EventArgs e)
//{
// //User_Info user = new User_Info();
// //user.UserID = 1;
// //user.LoginName = "111";
// //user.PassWord = "111";
// ////user.Email = "aaa";
// //user.Question = "aaa";
// //user.Result = "aaa";
// //user.UserType = true;
// //user.Re = "aaa";
// //User_InfoBLL userbll = new User_InfoBLL();
// //if (userbll.Insert(user) != 0)
// //{
// // Response.Write("<script>alert('添加帐号成功');</script>");
// //}
// //else
// //{
// // Response.Write("<script>alert('添加帐号失败');</script>");
// //}
//}
protected void Button1_Click(object sender, EventArgs e)
{
int no = Convert.ToInt32(this.TextBox2.Text);
int id = 65;
DataTable dt = new DataTable();
DataColumn dc1 = new DataColumn("SelectID");
DataColumn dc2 = new DataColumn("SelectContent");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2); for (int i = 0; i < no; i++)
{
dc1.DefaultValue = Convert.ToChar(id);
dc2.DefaultValue = "";
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
id = id + 1;
} this.DataList1.DataSource = dt;
this.DataBind();
ViewState.Add("dt",dt);
ViewState.Add("id",id);
}
protected void Button2_Click(object sender, EventArgs e)
{
string str = "";
for (int i = 0; i < this.DataList1.Items.Count; i++)
{
TableRow tr = new TableRow();
TableCell tc1 = new TableCell();
tc1.Text = ((Label)this.DataList1.Items[i].FindControl("Label1")).Text;
TableCell tc2 = new TableCell();
tc2.Text = ((TextBox)this.DataList1.Items[i].FindControl("TextBox1")).Text;
TableCell tc3 = new TableCell();
tc3.Text = ((HtmlInputCheckBox)this.DataList1.Items[i].FindControl("Checkbox1")).Value;
tr.Cells.Add(tc1);
tr.Cells.Add(tc2);
tr.Cells.Add(tc3);
this.Table1.Rows.Add(tr);
if (((HtmlInputCheckBox)this.DataList1.Items[i].FindControl("Checkbox1")).Checked)
{
str = str + ((HtmlInputCheckBox)this.DataList1.Items[i].FindControl("Checkbox1")).Value;
this.Label2.Text = "你选择的正确答案是:" + str;
}
}
}
protected void Button3_Click(object sender, EventArgs e)
{
if (ViewState["dt"] == null)
{
int id = 65;
DataTable dt = new DataTable();
DataColumn dc1 = new DataColumn("SelectID");
DataColumn dc2 = new DataColumn("SelectContent");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2); //for (int i = 0; i < no; i++)
//{
//dc1.DefaultValue = Convert.ToChar(id);
//dc2.DefaultValue = "";
DataRow dr = dt.NewRow();
dr[0] = Convert.ToChar(id);
id = id + 1;
dt.Rows.Add(dr);
// id = id + 1;
//} this.DataList1.DataSource = dt;
this.DataBind();
ViewState.Add("dt", dt);
ViewState.Add("id", id);
}
else
{
int id = Convert.ToInt32(ViewState["id"]);
DataTable dt = (DataTable)ViewState["dt"];
DataRow dr = dt.NewRow();
dr[0] = Convert.ToChar(id);
dt.Rows.Add(dr);
this.DataList1.DataSource = dt;
this.DataBind();
ViewState["id"] = id + 1;
}
}
}
你的TextBox的命名,以你Table行的总数+1;这样就不会重名;你在服务器端可以取,也可以加;
这个应该就可以,只是没有测试吧。
有基础错误:tb.ID = "TextBox" + i;
tb.ID = "TextBox" + Count;你改成:
tb.ID = "TextBox" + i.ToString();
tb.ID = "TextBox" + Count.ToString();就可以了
给个在线演示地址……刚上传的……第1个文本框是输入要产生的文本框数量,输入后点ADD就一下子产生了……add one按钮就是一个一个添加……view按钮就是把数据遍历显示……还有个文本框无视吧……是我测试ajax工具包密码强度控件用的……
string类重载了+运算符的,任何与字符串做+运算都会调用其ToString()方法
不信?自己试试吧
private static int i = 0;string idstr = string.Empty; if(this.ViewState["controls"] != null)
idstr = this.ViewState["controls"].ToString(); idstr += string.Format("{0}{1};", tePOS.ToString(); , i++); string[] ids = idstr.Split(new char[] { ';' }); foreach (string id in ids)
{
TextBox tb = new TextBox();
tb.ID = string.Format(id);
tb.Text = tb.ID;
this.panel.Controls.Add(tb);
} this.ViewState["controls"] = idstr;
'Dim str As String()
'str = objCtl.SeachCSMS_Print_Setup().Split(Chr(13))
'For i As Integer = 0 To str.Length - 1
' If str(i).ToString().Trim <> "" Then
' Dim ARow As New System.Web.UI.HtmlControls.HtmlTableRow
' Dim bCell As New System.Web.UI.HtmlControls.HtmlTableCell
' Dim label99 As New System.Web.UI.WebControls.Label
' label99.ID = "Label" + (i + 99).ToString
' label99.Attributes.Add("lang", "EN-US")
' label99.Attributes.Add("style", "FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体")
' label99.Text = str(i)
' bCell.Controls.Add(label99)
' ARow.Cells.Add(bCell)
' Table3.Rows.Add(ARow)
' End If
'Next上面是一个例子,瞅瞅
的值问题