2012-07-18 76 views
0

朋友我有一個父頁面(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)當我點擊按鈕?

回答

2

試試這個按鈕點擊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

0

您不能訪問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

相關問題