2013-02-25 155 views
1

我是新來的asp.net。我調用Iframe src throw table row javscripct單擊事件。 (即的onclick = 「返回loadPhaseWiseChart(」 DGSET00025 「);」)IFrame:頁面回傳或刷新iframe src

我的代碼: -

<tr height="25" id="row3" onclick="return loadPhaseWiseChart("DGSET00025");" bgColor="#e1f2fe"> 
<td> 
<tr> 

jQuery代碼: -

function loadPhaseWiseChart(Asset_Discription) { 
      document.getElementById('IframeChart1').src = "PhaseOneChart.aspx?assetdiscription=" + Asset_Discription; 
     } 

當我點擊一行,我的頁面獲取回帖或刷新。我想避免頁面刷新或回發行單擊事件。 我如何做到這一點。任何幫助將不勝感激。

回答

0

你的onClick應該是這樣的:

<tr height="25" id="row3" onclick="loadPhaseWiseChart('DGSET00025');" bgColor="#e1f2fe"> 

注意回報的下降,以及內部串和外部屬性使用不同的報價類型(在JavaScript這些類型是可以互換的,但他們。至少必須與實際上使用jQuery你不應該添加一個onClick這樣可言,而是使用數據屬性是這樣的:

<tr height="25" id="row3" data-chart="DGSET00025" bgColor="#e1f2fe"> 

和你的功能結合到這樣的單擊事件:

$('#row3').on('click', loadPhaseWiseChart); 

這將您的「loadPhaseWiseChart」改成這樣:

function loadPhaseWiseChart() { 
    document.getElementById('IframeChart1').src = "PhaseOneChart.aspx?assetdiscription=" + $(this).data('chart'); 
} 

最後只是要確定你不會困此,一個HTML元素的ID由ASP.net結構改變你添加一個'runat ='服務器'',所以如果你的iframe的ID爲'IframeChart1'和'runat'屬性,那麼ASP會將它變成類似'iframe_01_h1'的東西。你可以用這樣的ASP代碼得到這個值:

document.getElementById('<%= IframeChart1.ClientID %>')