如何使用javascript添加动态创建的文本框值
请有人帮我解决这个难题 我已经使用javascript动态创建了行。现在我的任务是添加文本框值 由于它是动态创建的,所以所有文本框都只有一个id、名称或类 我在这个表中有一个固定的文本框。当用户输入第一行的第一个文本框的值时,它应该输入那个固定的文本框 然后,如果他在动态创建的第二个文本框中输入值(所有文本框仅具有相同的id),则应添加两个文本框值,并在按键时显示在该固定文本框中 希望你能理解我的问题 请帮助我。如果可能的话,给我一些示例代码。此外,我的值的格式将是12:00,09:00如何使用javascript添加动态创建的文本框值,javascript,asp.net,html,Javascript,Asp.net,Html,请有人帮我解决这个难题 我已经使用javascript动态创建了行。现在我的任务是添加文本框值 由于它是动态创建的,所以所有文本框都只有一个id、名称或类 我在这个表中有一个固定的文本框。当用户输入第一行的第一个文本框的值时,它应该输入那个固定的文本框 然后,如果他在动态创建的第二个文本框中输入值(所有文本框仅具有相同的id),则应添加两个文本框值,并在按键时显示在该固定文本框中 希望你能理解我的问题 请帮助我。如果可能的话,给我一些示例代码。此外,我的值的格式将是12:00,09:00 首先,
首先,我需要相同id的解决方案。如何解决此id问题,以便我能够管理..帮助我如果我正确理解您的意思,您希望动态创建具有不同id的文本框,然后希望读取服务器端的值 检查以下代码 如果您在代码中遇到任何问题,请告诉我。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DynamicTextboxJavascript.aspx.cs"
Inherits="DynamicTextboxJavascript" %>
<!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 id="Head1" runat="server">
<script type="text/javascript">
function addElement() {
var ni = document.getElementById('myDiv');
var numi = document.getElementById('theValue');
var num = (document.getElementById('theValue').value -1)+2;
numi.value = num;
var newdiv = document.createElement('div');
var divIdName = 'my'+num+'Div';
newdiv.setAttribute('id',divIdName);
newdiv.innerHTML = '<input type="text" name="TextBox'+num+'" value="TextBox'+num+'" >';
ni.appendChild(newdiv);
}
</script>
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
<div id="myDiv">
</div>
<input type="button" id="btnOfficial" value="Add Another TextBox" onclick="addElement();" />
<input type="hidden" value="1" id="theValue" runat="server" />
<asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" Text="Read" />
</form>
</body>
</html>
函数addElement(){
var ni=document.getElementById('myDiv');
var numi=document.getElementById('theValue');
var num=(document.getElementById('theValue')。value-1)+2;
numi.value=num;
var newdiv=document.createElement('div');
var divIdName='my'+num+'Div';
newdiv.setAttribute('id',divIdName);
newdiv.innerHTML='';
ni.儿童基金会(新分部);
}
无标题页
使用系统;
使用系统数据;
使用系统配置;
使用系统集合;
使用System.Web;
使用System.Web.Security;
使用System.Web.UI;
使用System.Web.UI.WebControl;
使用System.Web.UI.WebControl.WebParts;
使用System.Web.UI.HTMLControl;
公共部分类DynamicTextboxJavascript:System.Web.UI.Page
{
受保护的无效页面加载(对象发送方、事件参数e)
{
}
受保护的无效btnSave\u单击(对象发送方,事件参数e)
{
ArrayList alForm=新的ArrayList();
//因为我的文本框id已启动
//与2相似(TextBox2、TextBox3。。。。。
for(int i=2;i
很抱歉,我无法回答您的问题。生成行的代码是什么?如果是循环,您可以将计数器附加到id,或者生成并存储一个随机数。嗨,极客,这对我帮助很大。非常感谢。我还有另一个澄清。现在,如果我想动态添加一行,请不要使用文本框获取整行的erhtml代码。。
using System;
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;
public partial class DynamicTextboxJavascript : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSave_Click(object sender, EventArgs e)
{
ArrayList alForm = new ArrayList();
//Because my textbox id is started
// with 2 like(TextBox2,TextBox3.....
for (int i = 2; i< Request.Form.Count - 2;i++)
{
string strId = "TextBox" + i.ToString();
string strValue = Request.Form[strId].ToString();
alForm.Add(strValue);
strValue = "";
}
GridView1.DataSource = alForm;
GridView1.DataBind();
}
}