2016-07-15 10 views
0

Ich habe zwei Seite print.html, die index.html und print.htmlPass JQuery Daten

auf meiner Seite index.html gibt es einen Rechner und ich habe eine Schaltfläche namens Druck, der auf den Index befindet. html Wenn Sie auf die Schaltfläche PRINT klicken, würde es zu print.html gehen. Mein Problem ist, sendet nicht den Eingabewert, den ich auf index.html gemacht habe. Hinweis: Dies funktioniert, wenn ich nicht auf print.html gehe. der Wert zeigt, aber wenn es auf einer anderen Seite setzt, wird zeigen, der Wert bis

print.html

$(document).ready(function() { 
    $('#print_modal').click(function() { 
    e.preventDefault(); 


var rec_product = $('#rec_product').val(); 
var calc_height = $('#calc_height').val(); 
var calc_width = $('#calc_width').val(); 
var calc_depth = $('#calc_depth').val(); 


$('#srec_product').text(rec_product); 
$('#sheight').text(calc_height); 
$('#swidth').text(calc_width); 
$('#sdepth').text(calc_depth); 

     window.print(); 
     return false; 
     window.location.href = "print.html"; 
     window.open(url, '_blank'); 


    }); 
+0

return false abzurufen; <<< nichts danach wird ausgeführt, wenn es dann wäre window.location.href = "print.html"; <<< nichts danach würde ausgeführt werden - also nicht das: window.open (url, '_blank'); – mplungjan

+0

wurde umgeschrieben. Was ich will ist, den Eingabewert von index.html zu print.html mit jquery – JeVic

+0

aufrufen Sie meinen '" print.html? Val = "+ Wert" und verwenden Sie location.search in print.html? – mplungjan

Antwort

0

Sie

window.location = '/print.html?rec_product='+$("#rec_product").val()+'&calc_height='+$("#calc_height").val(); 

zum Laden Ihres print.html verwenden können im gleichen Fenster Tab.

<script type="text/javascript"> 
load(); 

function load() 
{ 
    window.location.search.replace ("?", "").split("&") 
     .forEach(function (item) { 
     var tmp = item.split("="); 
     document.getElementById(""+tmp[0]).value=tmp[1]; 
    }); 
} 

</script> 

Wenn Sie wollen, es zu tun über jquery dann verwenden

$("#"+tmp[0]).val(tmp[1]); 

von insted:

Wenn Sie mehrere Parameter verwenden folgenden Code zu bekommen Wert auf print.html senden

Sie müssen Eingabefelder mit gleichem Namen wie beim Senden haben.

Sie können auch Last Funktionscode in Ihrem

$(document).ready(function() { 

}); 

auf print.html verwenden.

+0

Wie in meinem Kommentar – mplungjan

+0

wie würde ich cal rec_product so würde es auf dem Print-HTML angezeigt werden? – JeVic

+0

Ich habe die Antwort bearbeitet. – Abhay

0

$("#print_modal").click(function(e) { 
     e.preventDefault(); 
     var value = //get input value 
     $.get("print.html", {"value":value}); 
    }); 

dieser Code jQuery werden Sie print.html?value=12 direkt (wo 12 Ihr Wert ist).

Anschließend können Sie PHP in print.html verwenden Sie den Wert ($_GET['value'])

+0

Wenn es Erweiterung .html hat, ist es wahrscheinlich nicht php - wie auch immer das ist, was ich in meinem Kommentar vorgeschlagen habe – mplungjan