.NET中利用js让子窗体向父页面传值的实现方法

时间:2021-05-28

子页面C#后台代码:
复制代码 代码如下:
/// <summary>
/// 将设置好的值赋给父页面
/// </summary>
/// <param name="count">需要传递的值</param>
void SetValueToParentPage(int count, string strPersons)
{
StringBuilder jsStr = new StringBuilder();
jsStr.Append(" var retValue = new Object();");
if (count == 0)
{
jsStr.AppendFormat("retValue = null;");
}
else
{
jsStr.AppendFormat("retValue.Nums='{0}';", count);
jsStr.AppendFormat("retValue.Names='{0}';", strPersons);
}
jsStr.Append("window.returnValue = retValue;window.close();");

ClientScript.RegisterStartupScript(GetType(), "close", jsStr.ToString(), true);
}


父页面前台js:
复制代码 代码如下:
function OpenPerChoose(url) {
var openobj = window;
if (typeof (window.dialogArguments) == "object") {
openobj = window.dialogArguments;
}
var returnValue = showPopWin(url, 800, 600, openobj);
if (returnValue != null) {
document.getElementById("<%=txtQualifiedNums.ClientID %>").value = returnValue.Nums;
}
}


复制代码 代码如下:
//弹出窗口
function showPopWin(url, width, height, returnFunc) {
width = parseInt(width) + 30;
height = parseInt(height) + 30;
return window.showModalDialog(url + "&Datetime=" + GetTime(), document, "dialogWidth:" + width + "px;dialogHeight:" + height + "px;help:0;status:0;scroll:auto;center:1;resizable:1;");
}


<th style="width: 100px;">
培训合格人数:
</th>
<td style="width: 50px;">
<asp:TextBox ID="txtQualifiedNums" runat="server" Width="50px" ReadOnly="true"></asp:TextBox>
</td>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章