簡體   English   中英

window.print onclientclick防止代碼背后的onclick

[英]window.print onclientclick preventing onclick in codebehind

我有一個頁面需要在調用window.print()之后通過OnClick回發到該頁面。 我已經花了幾個小時來尋找解決方案,但是到目前為止,還沒有找到合適的組合。 我設置了一個測試頁,以確保沒有其他JavaScript干擾。 這是代碼

<asp:Button ID="Print" runat="server" Text="Print" OnClientClick = "window.print();return true;" UseSubmitBehavior="false" OnClick="Print_Click" />

protected void Print_Click(object sender, EventArgs e)
{
   Response.Write("Clicked");
}

那是在瀏覽器中的渲染按鈕:

<input id="Print" class="button" type="button" onclick="window.print();return true;__doPostBack('Print','')" value="Print" name="Print">

回發未發生,並且未調用print_click。 我也嘗試過在page_load后面的代碼中添加onclientclick

我將不勝感激-我想我已經查看了100多個搜索結果。 謝謝朱迪

<asp:Button ID="Print" runat="server" Text="Print" UseSubmitBehavior="false" OnClick="Print_Click" />

您是否嘗試過刪除OnClickClick來查看是否正確觸發了回發?

如果可行,那么我將嘗試手動添加客戶端打印:

var originalClick = $('#Print').click();

$('#Print').click(function(){
   window.print();
   originalClick();
});

我認為protected級別還不錯,但也許以防萬一,請嘗試public

我認為部分問題與Firefox有關。 一位同事給我的代碼有些不同,它在FF中不起作用,但在IE和Chrome中有效。 這是他給我的-其中一部分涉及隱藏功能handlePrintClick(){window.print(); var buttonId =“ <%= Print.ClientID%>”; var buttonElm = document.getElementById(buttonId); buttonElm.click(); }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM