2016-09-26 4 views
0

Я написал следующую функцию для вызова другой страницы, когда я нажму кнопку печати. но когда я нажимаю кнопку «Печать», она открывает текущую страницу вместо той, которую я хочу вызвать.на печать щелкните, как открыть другую страницу?

function printme(tripId, requestId, Ecommerce) { 
     //alert("print is called"); 
     alert(tripId); 
     alert(requestId); 
     alert(Ecommerce); 
     window.location.href = "ViewTripConformationPrint.cshtml?"; 
     window.print(); 

     //workaround for Chrome bug - https://code.google.com/p/chromium/issues/detail?id=141633 
     if (window.stop) { 
      location.reload(); //triggering unload (e.g. reloading the page) makes the print dialog appear 
      window.stop(); //immediately stop reloading 
     } 
     return false; 
    } 
+0

Возможный дубликат [Есть ли способ иметь обратный вызов onload после изменения window.location.href?] (Http://stackoverflow.com/questions/13811582/is-there-a-way-to-have- ан-OnLoad-обратный вызов после того, как меняющийся-оконных расположения-HREF) –

ответ

1

Проблема, с которой вы столкнулись, заключается в том, что код после установки window.location.href выполняется немедленно. Страница не загружена, а затем код продолжается ... код продолжается до конца функции, а затем window.location.href загружается и обрабатывается. Если вы понимаете, что я имею в виду.

Вы можете попробовать переместить свой код (window.print, если window.stop и т. Д.) В ViewTripConformationPrint.cshtml (как часть onload).

Смежные вопросы