如何获取GridView1表中的各个input和textarea控件的值

VicSoft 2011-12-29 08:11:49
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm5.aspx.cs" Inherits="VicSoftCms.WebFile.WebForm5" %>
<!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>
<script type="text/javascript">
// Example: obj = findObj("image1");
function findObj(theObj, theDoc) { var p, i, foundObj; if (!theDoc) theDoc = document; if ((p = theObj.indexOf("?")) > 0 && parent.frames.length) { theDoc = parent.frames[theObj.substring(p + 1)].document; theObj = theObj.substring(0, p); } if (!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj]; for (i = 0; !foundObj && i < theDoc.forms.length; i++) foundObj = theDoc.forms[i][theObj]; for (i = 0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) foundObj = findObj(theObj, theDoc.layers[i].document); if (!foundObj && document.getElementById) foundObj = document.getElementById(theObj); return foundObj; }
//添加一个参与人填写行
function AddSignRow() {//读取最后一行的行号,存放在txtTRLastIndex文本框中
var txtTRLastIndex = findObj("txtTRLastIndex", document);
var rowID = parseInt(txtTRLastIndex.value);

var gridView1 = findObj("GridView1", document);
//添加行
var newTR = gridView1.insertRow(gridView1.rows.length);
newTR.id = "SignItem" + rowID;

// //添加列:团队类型
// var newNameTD = newTR.insertCell(0);
// //添加列内容
// newNameTD.innerHTML = newTR.rowIndex.toString();

//添加列:团队类型
var newNameTD = newTR.insertCell(0);
//添加列内容
newNameTD.innerHTML = "<td align=\"center\" valign=\"middle\" style=\"font-weight:bold;width:6%;\">第<br/>" + rowID + "<br/>天</td>";

//添加列:经济等
var newNameTD = newTR.insertCell(1);
//添加列内容
var str = "<td align=\"left\" style=\"font-weight:bold;width:88%;\"><table align=\"left\" cellpadding=\"1\" cellspacing=\"1\" bgColor=\"#cccccc\" border=\"1\" style=\"width:100%;\">"
str = str + "<tr bgColor=#f7f7f7><td width=\"10%\" align=\"right\">行程简介</td>"
str = str + "<td align=\"left\"><input name=\"GridView1$ctl02$TextBox33" + rowID + "\" type=\"text\" id=\"GridView1_ctl02_TextBox33" + rowID + "\" style=\"width:99%;\" value=\"" + rowID + "\"/></td></tr>"
str = str + "<trbgColor=#f7f7f7><td width=\"10%\" align=\"right\">详细行程</td>"
str = str + "<td align=\"left\"><input type=\"hidden\" id=\"GridView1_ctl02_FCKeditor22" + rowID.toString() + "\" name=\"GridView1$ctl02$FCKeditor22" + rowID + "\" value=\"" + rowID.toString() + rowID.toString() + "\"/><input type=\"hidden\" id=\"GridView1_ctl02_FCKeditor22"+ rowID.toString() + "___Config\" value=\"HtmlEncodeOutput=true\" /><iframe id=\"GridView1_ctl02_FCKeditor22" + rowID.toString() + "___Frame\" src=\"/_libs/fckeditor/editor/fckeditor.html?InstanceName=GridView1_ctl02_FCKeditor22" + rowID.toString() + "&Toolbar=VicSoft\" width=\"100%\" height=\"250px\" frameborder=\"no\" scrolling=\"no\"></iframe></td></tr>"
//str = str + "<td align=\"left\"><script type=\"text/javascript\"> var oFCKeditor = new FCKeditor('FCKeditor1'); oFCKeditor.BasePath = \"_libs/FCKeditor/\";oFCKeditor.Create(); <\/script><\/td><\/tr>";
str = str + "<trbgColor=#f7f7f7><td width=\"10%\" align=\"right\">住宿或返程</td>"
str = str + "<td align=\"left\"><input name=\"GridView1$ctl02$TextBox44" + rowID + "\" type=\"text\" id=\"GridView1_ctl02_TextBox44" + rowID + "\" style=\"width:99%;\" value=\""+ rowID.toString()+ rowID.toString()+ rowID.toString()+"\"/></td></tr>"
str = str + "<trbgColor=#f7f7f7><td width=\"10%\" align=\"right\">行程中的著名景点</td>"
str = str + "<td align=\"left\"><textarea name=\"GridView1$ctl02$txtPhotoUrl" + rowID + "\" rows=\"2\" cols=\"20\" id=\"GridView1_ctl02_txtPhotoUrl" + rowID + "\" class=\"ipt\" style=\"width: 50%; height: 90px;\">" + rowID.toString() + rowID.toString() + rowID.toString() + rowID.toString() + "</textarea><iframe ID=\"I2\" frameborder=\"0\" height=\"90\" name=\"I2\" scrolling=\"no\" src=\"../admin/attachment_default3.aspx?ccid=6\" width=\"48%\"></iframe></td></tr></table></td>"
newNameTD.innerHTML=str;
//添加列:标准等
var newEmailTD = newTR.insertCell(2);
//添加列内容
newEmailTD.innerHTML = "<td align=\"center\" style=\"font-weight:bold;width:6%;\"><a href='javascript:;' onclick=\"if (confirm('确定要删除此条数据?')) {DeleteSignRow('SignItem" + rowID + "');}\">删除</a></td>";

//将行号推进下一行
txtTRLastIndex.value = (rowID + 1).toString();
}

//删除指定行AddThreeRow()
function DeleteSignRow(rowid) {

var gridView1 = findObj("GridView1", document);
var signItem = findObj(rowid, document);

//获取将要删除的行的Index
var rowIndex = signItem.rowIndex;

//删除指定Index的行
gridView1.deleteRow(rowIndex);

var inps = gridView1.getElementsByTagName("*");
for (var i = 0; i < inps.length; i++) {
// if (inps[i].id == "txtIndex" + rowIndex)
alert(inps[i].id + ":" + inps[i].value)
}

//重新排列团队类型,如果没有团队类型,这一步省略
for (i = rowIndex; i < gridView1.rows.length; i++) {
gridView1.rows[i].cells[0].innerHTML = "<td align=\"center\" valign=\"middle\" style=\"font-weight:bold;width:6%;\">第<br/>" + i.toString() + "<br/>天</td>";
}
var txtTRLastIndex = findObj("txtTRLastIndex", document);
txtTRLastIndex.value = gridView1.rows.length;
}
//清空列表
function ClearAllSign() {
if (confirm('确定要清空所有数据?')) {
var gridView1 = findObj("GridView1", document);
var rowscount = gridView1.rows.length;

//循环删除行,从最后一行往前删除
for (i = rowscount - 1; i > 0; i--) {
gridView1.deleteRow(i);
}

//重置最后行号为1
var txtTRLastIndex = findObj("txtTRLastIndex", document);
txtTRLastIndex.value = "1";

//预添加一行
AddSignRow();
}
}
</script>
<script type="text/javascript">
// 获取编辑器中HTML内容
function getEditorHTMLContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return (oEditor.GetXHTML(true));
}
function saveMasterSetting(elm) {
var power = "";
var Powers = "";
var cxpower1 = document.getElementById("DivPower1").getElementsByTagName("input");
cxpower1[0].value = "";
var cxpower2 = document.getElementById("DivPower2").getElementsByTagName("input");
cxpower2[0].value = "";

//var tr = elm.parentNode.parentNode;
var inps = GridView1.getElementsByTagName("input");
for (var i = 0; i < inps.length - 1; i++) {
var cxv = "GridView1_ctl02_FCKeditor22" + i.toString();
if (inps[i].id.toLowerCase() == cxv.toLowerCase()) {
power += i.toString() + "-" + getEditorHTMLContents(inps[i].id) + ",";
Powers += i.toString() + "-" + getEditorHTMLContents(inps[i].id) + ",";
}
else {
power += i.toString() + "-" + inps[i].value + ",";
Powers += i.toString() + "-" + inps[i].value + ",";
}
}
cxpower1[0].value = power; //power.substring(0, power.length - 4).replace(",,", ",");
cxpower2[0].value = Powers; //Powers.substring(0, Powers.length - 4).replace(",,", ",");
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table cellspacing="0" cellpadding="4" border="0" id="GridView1" style="color:#333333;width:100%;border-collapse:collapse;" cellpadding="1" cellspacing="1" bgColor="#cccccc">
<tr style="color:White;background-color:#507CD1;font-weight:bold;">
<th align="center" scope="col" style="width:6%;">日期</th><th align="center" scope="col" style="width:88%;">详细行程</th><th align="center" scope="col" style="width:6%;">操作</th>
</tr>
<input name='txtTRLastIndex' type='hidden' id='txtTRLastIndex' value='1' />
<asp:Literal ID="Literal2" runat="server"></asp:Literal>

</table>
<table id="GridView2">
<tr>
<td>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
<input type="button" name="Submit" value="添加详细报价" onclick="AddSignRow()" />
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" onclientclick="saveMasterSetting(GridView1);"/>
<div id="DivPower1"><asp:TextBox ID="txtLineprice" runat="server" CssClass="a"
Width="100%"></asp:TextBox></div><div id="DivPower2"><asp:TextBox ID="TextBoxPower2" runat="server" CssClass="a" Width="100%"></asp:TextBox></div>
</td>
</tr>
</table>
</div>
</form>
</body>

</html>

使用getEditorHTMLContents(EditorName)只能够取到第一个动态添加的fckeditor值,第二个以后就取不到。。

请高手指点。在线等。。。。
...全文
130 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
VicSoft 2011-12-30
  • 打赏
  • 举报
回复
没有JS高手?
VicSoft 2011-12-30
  • 打赏
  • 举报
回复
我现在只能够取到第一个GridView1_ctl02_FCKeditor221的值
其它的GridView1_ctl02_FCKeditor22都不能够取到
p2227 2011-12-30
  • 打赏
  • 举报
回复
直接 jQuery 吧
吉普赛的歌 社区高级成员 T9 2011-12-30
  • 打赏
  • 举报
回复
你直接把生成的页面最终的html代码贴出来, 象这样没有人帮你看的。
VicSoft 2011-12-29
  • 打赏
  • 举报
回复
没有人吗?
内容概要:本文围绕基于Basisformer模型的时间序列锂离子电池SOC(State of Charge,荷电状态)预测展开研究,利用PyTorch框架实现深度学习模型的构建与训练。通过将历史充放电数据作为输入,Basisformer能够有效捕捉电池状态的动态变化特征,提升SOC预测精度。文中详细介绍了模型结构设计、数据预处理流程、训练策略及实验结果分析,并与传统方法进行对比,验证了该方法在复杂工况下的优越性与鲁棒性。该研究不仅展示了Basisformer在时序建模中的潜力,也为电池管理系统提供了高精度的状态估计解决方案。; 适合人群:具备一定Python编程基础和深度学习理论知识,熟悉PyTorch框架,从事电池管理系统、新能源汽车或智能预测方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于电动汽车、储能系统等领域的电池SOC高精度实时估算;②为电池健康管理(BMS)提供可靠的状态输入;③推动深度学习在时间序列预测中的实际落地,提升现有预测模型的泛化能力与稳定性; 阅读建议:建议读者结合标题为【锂电池SOC估计】【PyTorch】基于Basisformer时间序列锂离子电池SOC预测研究(python代码实现)的资源,重点研读所提供的Python代码,深入理解数据处理方式与模型网络结构的设计思路,尝试调整超参数以观察对预测性能的影响,从而全面掌握Basisformer在时序建模中的优势、适用边界及工程化实现路径。

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧