如何访问当前页面中的iframe文本框ID?

问题描述:

朋友我有一个父页面(default.aspx),其中包含一个包含文本框的iframe页面(iframe.aspx)。父页面包含“保存”按钮。现在我想在提交父页面时获取iframe页面的值。我如何访问父页面提交中的iframe页面字段?如何访问当前页面中的iframe文本框ID?

iframe.aspx页,,,, iframe中页面我有两个文本框,,

<asp:textbox id="txtfromdate" runat="server"></asp:textbox> 
<asp:textbox id="txttodate" runat="server"></asp:textbox> 

Default.aspx页面

<iframe id="iframebody" runat="server" src="iframe.aspx" style="width:900px; height:600px"></iframe> 

<asp:button id="submit" text="save" runat="server" /> 

frdz如何访问的iframe页面ID(txtfromdate, txtTodate)在parrent页面(default.aspx)当我点击按钮?

试试这个按钮点击javascript。

HTML

<input type="hidden" id="txtHidData" runat="server" /> 

的Javascript

var iframe = document.getElementById('iframebody'); 
var innerDoc = iframe.contentDocument || iframe.contentWindow.document; 
var usernameTextBox = innerDoc.getElementById('txtfromdate'); 
document.getElementById ("txtHidData").value = usernameTextBox.value; 

C#

string valueInCodeBehind = txtHidData.Value; 
+0

@pravn这些隐藏字段,如

<asp:HiddenField id="hdffromdate" runat="server"></asp:textbox> <asp:HiddenField id="hdftodate" runat="server"></asp:textbox> 

设定值 - >谢谢FRD,我会现在就来试试,, do yu知道如何在代码后面访问id? – mohamed 2012-07-18 06:34:33

+0

你可以在页面中放置一个隐藏字段。然后使用上面的javascript将fromdate的值赋值给该隐藏值。然后在后面的代码中,可以访问隐藏的字段值。 – PraveenVenu 2012-07-18 06:35:53

+0

@pravn - >谢谢frd,是他们的可能,可以让我举个例子吗? – mohamed 2012-07-18 06:41:53

您不能访问iframe的与内容服务器端代码。

对于访问iframe的内容,您应该使用javascript。

在jQuery中,您可以访问它:

​​

店它隐藏字段页上,然后在服务器端代码

放置两个隐藏字段访问您的aspx页面上。像

$('[id$=hdffromdate]').val(fromDate); 
$('[id$=hdftodate]').val(toDate); 

在你的提交按钮点击事件处理

protected void submit_Click(object sender, EventArgs e) 
{ 
     var fromDate = Convert.ToDateTime(hdffromdate.Value); 
     var toDate = Convert.ToDateTime(hdftodate.Value); 
     //... 
} 
+0

@Yograj - >哦谢谢你frd的信息,你能给我那个jquey的链接吗?如果可能的话,举个例子吧? – mohamed 2012-07-18 06:44:22

+0

更新了答案。 – 2012-07-18 06:53:40