关于一个子窗体向父窗体传值的问题
1 我的父窗体 是点击按钮打开一个窗体。
<asp:Button ID="btnChoseUnit" OnClientClick="javascript:OpenPopup();" runat="server"
Text="单位选择" />
<input type="hidden" id="txtUnitName" runat="server" />
<input type="hidden" id="txtUnitId" runat="server" />
js代码
<script type="text/javascript">
function OpenPopup() {
window.showModalDialog("TreeViewInfo.aspx", "List", "scrollbars=no,resizable=no,width=400,height=263");
}
function setValue(UnitName, UnitId) {
document.getElementById('txtUnitName').value = UnitName;
document.getElementById('txtUnitId').value = UnitId;
}
</script>
看了网上的好多参考,却不知道
<input type="hidden" id="txtUnitName" runat="server" />
<input type="hidden" id="txtUnitId" runat="server" />
这两个隐藏控件的用处。
2 我的子窗体是一个目录树
<input type="hidden" runat="server" id="txtUnitName" />
<input type="hidden" runat="server" id="txtUnitId" />
<div>
<asp:TreeView ID="TrView" Font-Bold="true" Font-Size="15px" runat="server" ImageSet="Contacts"
ShowCheckBoxes="All" OnTreeNodeCheckChanged="TrView_TreeNodeCheckChanged">
<ParentNodeStyle Font-Bold="False" />
<HoverNodeStyle Font-Underline="True" ForeColor="#5555DD" />
<SelectedNodeStyle Font-Underline="True" HorizontalPadding="0px" VerticalPadding="0px"
ForeColor="#5555DD" />
<NodeStyle Font-Names="Verdana" Font-Size="8pt" ForeColor="Black" HorizontalPadding="5px"
NodeSpacing="0px" VerticalPadding="0px" />
</asp:TreeView>
</div>
<div>
<asp:Button ID="btnUnitAdd" runat="server" Text="确认选择" OnClick="btnUnitAdd_Click" />
</div>
</form>
我看网上的参考就是 当点击确认选择的时候 给那两个隐藏控件赋值。
但是我不知道 需要给子窗体也弄两个隐藏控件不
我在网上找了一个参考
StringBuilder strUname = new StringBuilder();
StringBuilder strUnitId = new StringBuilder();
//组织的名字
string UnitName = string.Empty;
//组织Id
string UnitId = string.Empty;
foreach (TreeNode item in TrView.CheckedNodes)
{
if (item.Checked)
{
strUname.AppendLine(item.Text + ";");
strUnitId.AppendLine(item.Value + ";");
}
}
// function valueClose() {
// var UnitName = docment.getElementById('txtUnitName').value;
// var UnitId = docment.getElementById('txtUnitId').value;
// opener.setValue(UnitName, UnitId)
// window.close();
//}
StringBuilder s = new StringBuilder();
s.Append("<script language=javascript>" + "\n");
s.Append("var UnitName = docment.getElementById('txtUnitName').value;");
s.Append("var UnitId = docment.getElementById('txtUnitId').value;");
s.Append("opener.setValue('" + strUname + "', '" + strUnitId + "')");
s.Append("window.close();" + "\n");
s.Append("</script>");
Type cstype = this.GetType();
ClientScriptManager cs = Page.ClientScript;
string csname = "ltype";
if (!cs.IsStartupScriptRegistered(cstype, csname))
cs.RegisterStartupScript(cstype, csname, s.ToString());
我需要传的就只是 strUname 和 strUnitId 这两个值
但是 这个子窗体 不关 还报错
说页面脚本错误
我不知道 这个是不是能够取到值 求解决
...全文
相关推荐
Winform窗体之间传值(子窗体传给父窗体)代码实例
下面将详细介绍如何在Winform窗体之间,特别是子窗体传值给父窗体的代码实现方式。1. **构造函数传递**: 子窗体可以拥有一个带参数的构造函数,接收来自父窗体的数据。
子窗体传值给父窗体传值
**子窗体的关闭与传值** - 当子窗体需要关闭时,我们需要一个机制来通知父窗体并传递数据。这可以通过自定义事件或直接访问父窗体的公共属性来实现。
子窗体传值给父窗体的select
这里我们讨论的是一个典型的用户界面设计场景,涉及到"子窗体传值给父窗体的select"的问题。
C# 子窗体向父窗体的控件传值
### C# 子窗体向父窗体的控件传值#### 背景介绍在C#的Windows Forms应用程序开发中,经常会遇到需要在不同的窗体之间传递数据的情况。
javascript 子窗体父窗体相互传值方法
document.form2.arcID[i].checked){ document.form2.arcID[i].checked=false; } }}```### 关于补充说明补充说明中提到的“模式窗体传值


