2016-09-29 5 views
-1

Ich habe eine Seite, wo ich nur Div-Inhalt drucken muss, dieser Inhalt ist dynamisch und wird basierend auf Drop-Down-Wert variieren. Nun, ich mag diesen Inhalt drucken, ich war in der Lage, es zu tun erfolgreichDrucken Div-Inhalt nur ohne andere Funktionalität zu verlieren

mit
function printDiv(divId){ 
    var orginalPage= document.body.innerHTML; 
    var printDiv= document.getElementById(divId).innerHTML; 
    document.body.innerHTML = printDiv; 
    window.print(); 
    document.body.innerHTML = orginalPage; 
} 

aber mein Problem ist, wenn ich fertig bin Druck den div und sie wieder auf aktuelle Seite des Drop-Down-Wert Reseting immer auf dem Standard Wert. Ich möchte, dass der Wert dem Wert entspricht, der vor dem Drucken von div ausgewählt wurde. Zum Beispiel habe ich "xyz" aus der Dropdown-Liste gewählt und nach dem Drucken meines div-Inhalts möchte ich, dass xyz standardmäßig ausgewählt wird.

Ich werde eine Liste für diese Dropdown-Optionen iterieren. so etwas wie dieses

<select id="reason" > 
<logic:iterate id="hs" name="hslist" type="hsData"> 
<option value="">select a reason </option> 
<option value="<bean write name='hs' property='hsReasonId'/>"> 
<bean write name="hs" property="hsReasonDesc"/></option> 
</logic> 
</select> 

kann jemand helfen diese bei der Festlegung ...

+0

Können Sie das näher erläutern .... jeder Code-Schnipsel wird sehr geschätzt –

+0

so Ihren Körper von Seite in neuen versteckt div zu sagen immer, und drucken Sie die erforderlichen div? –

+0

möglich duplicate von http://stackoverflow.com/questions/2255291/print-the-contents-of-a-div –

Antwort

-1

Wie Sie die Innerhtml zurück an den Körper zuweisen der Wert, den Sie selcted früher verloren. Versuchen Sie zuerst, das innere HTML des Körpers auszudrucken. Ich denke, dass Sie in der Lage sein werden, herauszufinden, warum Ihr Drop-Down nicht ausgefüllt ist.

+0

Bitte erklären Sie, wie Sie einen Teil der html –

+0

drucken Versuchen Sie dies in Ihrem Code. var printBody = document.body.innerHTML; winow.print (printBody); –

0

können Sie das ausgewählte Attribut für ausgewähltes Element verwenden, um den Standardwert zu setzen

+0

Ich möchte Wert sein, der Wert, den Benutzer vor dem Drucken der Div ausgewählt ... kann ich das mit ausgewählten Attribut tun? –

0

Sie mit einem kleinen change.for lösen können, dass Sie ein zusätzliches Fenster öffnen mögen, und die HTML im Fenster zuweisen, die Sie mögen, drucken.

function printDiv(divId){ 
var printDiv= document.getElementById(divId).innerHTML; 
var myWindow = window.open("", "", "width=800,height=500"); 
myWindow.document.write(printDiv); 
myWindow.print(); 
} 
+0

Duplikat von http://stackoverflow.com/questions/2255291/print-the-contents-of-a-div –

Verwandte Themen