子窗口获取父窗口的值:
子窗口中前台加了HiddenField控件来存放父窗口的textbox控件中的值子窗口的前台代码,如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ViewUserTopMes.aspx.cs" Inherits="ViewUserTopMes" %><!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/jscript" language="javascript">
window.onload = GetParentValue; function GetParentValue()
{
document.getElementById("HiddenField1").value =parent.document.getElementById("TxtReachUser").value;
}
</script>
</head>
<body >
<form id="fom1">
<asp:HiddenField ID="HiddenField1" runat="server" /> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
</html>
字界面的CS代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;public partial class ViewUserTopMes : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("<script>alert('" + HiddenField1.Value.ToString() + "')</script>");
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write("<script>alert('" + HiddenField1.Value.ToString() + "')</script>");
}
} 问题是:Page_Load中获取不到HiddenField1.Value中的值,页面加载后,点击Button1后,才能看到HiddenField1.Value中的值,请问有没有好的办法?要求:必须用HiddenField控件解决,暂时不考虑用session,request等方法。谢谢!
借用AJAX是不是能解决呢?
子窗口中前台加了HiddenField控件来存放父窗口的textbox控件中的值子窗口的前台代码,如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ViewUserTopMes.aspx.cs" Inherits="ViewUserTopMes" %><!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/jscript" language="javascript">
window.onload = GetParentValue; function GetParentValue()
{
document.getElementById("HiddenField1").value =parent.document.getElementById("TxtReachUser").value;
}
</script>
</head>
<body >
<form id="fom1">
<asp:HiddenField ID="HiddenField1" runat="server" /> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
</html>
字界面的CS代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;public partial class ViewUserTopMes : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("<script>alert('" + HiddenField1.Value.ToString() + "')</script>");
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write("<script>alert('" + HiddenField1.Value.ToString() + "')</script>");
}
} 问题是:Page_Load中获取不到HiddenField1.Value中的值,页面加载后,点击Button1后,才能看到HiddenField1.Value中的值,请问有没有好的办法?要求:必须用HiddenField控件解决,暂时不考虑用session,request等方法。谢谢!
借用AJAX是不是能解决呢?
解决方案 »
- 如何设置MVC 中 Html.TextBox 的宽度?
- 关于Rediobutton_CheckedChanged事件问题
- EditPlus的问题...
- 请问关于自定义服务器控件的问题
- 请教个dropdownlist格式化显示的问题
- 关于命名空间的问题
- 内存不足,请现在保存文档
- 编程的方式使用EditCommandColumn,怎么相应事件???
- 关于Gridview动态添充Dropdownlist的问题
- 痛苦的想法,痛苦!!!!请求支援啊~~!!!!~~~
- 怎么截取第二个分号前的字段5392114:3305622;20000:32058;32022:136752;35243:16455870;
- 正在写HTML模板标签处理 100分寻思路
为什么要想得那么复杂呢.....window.parent.obj.value = thisObj.value;
如果是 那就好办多了
// 假设父窗体有ID为controllerID的控件 那么获取父窗体控件的方法如下
<script>
var p = window.dialogArguments;
var tempUserIDs = p.document.getElementById("controllerID").value; //从主窗体获取隐藏域的值
</script>
例如:( C# code<asp:Button id = "btnOk" runat = "server" OnClick = "btnOK_Click" />
)在后台事件里面去拿那个隐藏控件的值,然后再用String.Split('#');还原数据
2、主要是子页面需要获取父页面太多的控件中的数据,而且数据的组成格式非常复杂。若全采用URL传递数据,当然可以,但总感觉这种方式不是那么好。