2013-02-11 5 views
0

У меня проблема с укрытием страницы, которую я хочу распечатать.Распечатать страницу от скрытого iframe

При нажатии на кнопку ввода:

<input type="submit" id="print" name="print"> 

Это выполняет следующие действия:

$(function(){ 
    $('#print').click(function(){ 
     if($('#bills_ID').val()==''){popUpMessage(Error);} 
     else { window.open('Bills/BillsPrint.php?bills_ID='+$('#bills_ID').val(), '_blank') } 
    }); 
}); 

и печатает страницу. На данный момент я не хочу открывать эту страницу Bills/BillsPrint.php при печати. Я просто хочу, чтобы он печатался без отображения страницы.

как я могу попробовать это с помощью скрытой ifram

+0

Возможный дубликат [hide print page] (http://stackoverflow.com/questions/14799972/hide-print-page) – shanethehat

ответ

1

Укажите скрытый iframe так:

<iframe src="" style="display: none" id="myPrintView"></iframe> 

И использовать JQuery следующим образом:

$('#print').click(function(e) { 
    e.preventDefault(); 

    if($('#bills_ID').val()=='') 
    { 
     popUpMessage(Error); 
    } 
    else 
    { 
     $('#myPrintView').attr('src', 'Bills/BillsPrint.php?bills_ID='+$('#bills_ID').val()); 
     $('#myPrintView').get(0).contentWindow.print(); 
    } 
}); 

Вы можете увидеть рабочий jsFiddle here ,

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