2016-10-19 9 views
0

Ich möchte Eingabefelder mit Daten von JSON und dann an den Drucker und dann wieder zu füllen, um Eingaben aus der letzten Zeile -1 in db dann an den Drucker und gesendet dann letzte Zeile -2 dann drucken sie es etc .. ich habe auf dem Wert printmultiple es geschafft, die jSON-Daten von den letzten n zurückzukehren insered Zeilen aus der Datenbank in Abhängigkeitfüllen Eingabefelder mit JSON Daten dann an den Drucker gesendet

die html

<div id="printableArea"> 
<div align="center"> 

<input type="text" name="barcode2" id="barcode2" required readonly > 
<input type="text" name="barcodecountry" id="barcodecountry" > 
<input type="text" name="barcodecountry" id="barcodecountry2" > 

<br> 
<div id="print"> 
</div> 

<label id="idbar">id.:</label><input type="text" name="barcodesurname" id="barcodesurname" required readonly> 
<br> 
<br> 
<label id="pricebar">price:</label><input type="text" name="barcodename" id="barcodename" required readonly> 
<input type="text" name="barcodecountry" id="barcodecountry3"> 
</div> 
</div> 

</div> 

Printablearea ist die div, die Eingaben sind gefüllt und ich sende zum Drucken an Drucker

In meiner Js Datei

$(document).ready(function() { 


    $('form').submit(function(event) { 

     $('.form-group').removeClass('has-error'); // remove the error class 
     $('.help-block').remove(); // remove the error text 





     var formData = { 
      'surname'  : $('input[name=surname]').val(), 
      'name'  : $('input[name=name]').val(), 

      'telephone' : $("#telephone").val(), 
      'mail' : $("#mail").val(), 
      'barcode' : $("#barcode").val(), 
      'customid' : $("#customid").val(), 
      'ticketprice' : $("#ticketprice").val(), 
      'seat' : $("#seat").val(), 
      'printmultiple' :$("#printmultiple").val() 

     }; 

     $.ajax({ 
      type  : 'POST', 
      url   : 'process2.php', 
      data  : formData, 
      dataType : 'json', from the server 
      encode  : true 
     }) 

      .done(function(data) { 



       console.log(data); 

       if (! data.success) { 
         if (data.errors.surname) { 
         $('#surname-group').addClass('has-error'); 
         $('#surname-group').append('<div class="help-block">' + data.errors.surname + '</div>'); 
         } 
         else if (data.errors.name) { 
         $('#name-group').addClass('has-error'); 
         $('#name-group').append('<div class="help-block">' + data.errors.name + '</div>'); 
         } 



       } else { 

$.each(data.added, function (i,it){ 

    $('#printableArea').append(data.added[i]); 
}); 

    for(i=0; i<data.added[13]; i++){ 
        $('#barcodecountry2').val(data.added[1]); 
        $('#barcodesurname').val(data.added[0]);    
        $('#barcodename').val(data.added[4]); 
        $('#barcode2').val(data.added[2]); 
        $("#print").barcode(
    document.getElementById("barcode2").value, 
    "code128" 
    ); 
       $('#printableArea').print(); 
       } 

$('form').append('<div class="alert alert-success">' + data.message + '</div>'); 
    } 
      }) 


      .fail(function(data) { 


       console.log(data); 
      }); 


     event.preventDefault(); 
    }); 

}); 

Ich mag die zurückgegebenen Daten von json die Eingänge zum Beispiel der ersten 5 Elemente von json füllen dann druckt dann nächste 5 dann druckt gefüllt werden. Ich habe je nach printmultiple Wertcode für den Druck hinzugefügt, aber nur druckt tha letzte Zeile n-mal

unten i json Daten zurückgegeben add: Object { 0: "7784", 1: "2016-10-18 23:16:01.000000", 2: "16221458721646", 3: "2016-10-19", 4: "8", 5: "normal", 6: null, 7: "admin", 8: "DASDSADAS", 9: "7884", 18 more… }

+0

es helfen könnte, wenn Sie die Lösung gefunden haben zeige den Beispielinhalt der Variable 'data' und ihre Struktur. Interessanterweise ist das eine ziemlich merkwürdige Art zu drucken. Ist das ein Bericht? Normalerweise sind die Leute nicht daran interessiert, Formulare mit Textfeldern usw. zu drucken, sondern bevorzugen, dass die Daten schön und lesbar formatiert sind. Ein gedrucktes Formular wird im Allgemeinen nicht so gut aussehen. Formulare dienen zum Eingeben und Erfassen von Daten, nicht zum Anzeigen/Drucken. – ADyson

+0

das Formular ist zum Drucken von Barcodes mit Daten aus db, aber wenn jemand zum Beispiel 5 Barcodes drucken möchte ich die letzten 5 Zeilen in db eingefügt, weil der Barcode Strichcode + 1 und auf dem Drucker – aristeidhsP

+0

die Daten aus gedruckt wird json \t Objekt {0: "7784", 1: "2016-10-18 23: 16: 01.000000", 2: "16221458721646", 3: "2016-10-19", 4: "8", 5 : "normal", 6: null, 7: "admin", 8: "DASDSADAS", 9: "7884", 18 mehr ...} – aristeidhsP

Antwort

0

i

for(i=0; i<data.added[0].printmultiple; i++){ 
        $('#barcodecountry2').val(data.added[i].signintime); 
        $('#barcodesurname').val(data.added[i].customid);    //get id 
        $('#barcodename').val(data.added[i].ticketprice); 
        $('#barcode2').val(data.added[i].barcode); 
        $("#print").barcode(//div id print 
    document.getElementById("barcode2").value,// Value barcode (dependent on the type of barcode) 
    "code128" // type (string) 
    ); 
Verwandte Themen