2016-05-02 17 views
0

Ich habe einige Probleme über dynamische Add Feld combaine MaskMoney,MaskMoney.js funktioniert nicht auf dynamischen Feld hinzufügen

HTML-Teil

<div class='table-responsive mailbox-messages'> 

      <table id="dataTable" class='table table-hover'> 
      <tr> 
       <th>Keperluan</th> 
        <th>Tanggal Transaksi</th> 
       <th>Total Transaksi</th> 
       <th>Keterangan</th> 
        <th>Scan Foto</th> 
        <th>Action</th> 
       </tr> 
       <tbody class="input_fields_wrap"> 
     <tr> 
      <td><input type="text" name="mytext[]" id="perlu'+x+'" class="form-control" required="required" placeholder="Keperluan"/></td> 
      <td><input type="text" name="mytexts[]" id="s" class="form-control tgl" required="required" placeholder="Tanggal Transaksi"/></td> 
       <td><input type="text" name="mytexts[]" id="demo1" class="form-control numeric " required="required" placeholder="Only Number"/></td> 
       <td><input type="text" name="mytexts[]" id="s" class="form-control" required="required" placeholder="Keterangan"/></td> 
        <td><input type="file" name="mytexts[]" id="s" class="small" required="required"/></td> 
        <td><button class="add_field_button btn btn-success">Add Field</button></td> 


      </tr> 


       </tbody> 
      </table> 
</div> 

Javascript

$(document).ready(function() { 
    var max_fields  = 10; //maximum input boxes allowed 
    var wrapper   = $(".input_fields_wrap"); //Fields wrapper 
    var add_button  = $(".add_field_button"); //Add button ID 
    var x = 1; //initlal text box count 
    $(add_button).click(function(e){ //on add input button click 
     e.preventDefault(); 
     if(x < max_fields){ 
      x++; //text box increment 
      i = $('<tr><td><input type="text" name="mytext[]" id="perlu'+x+'" class="form-control" required="required" placeholder="Keperluan"/></td><td><input type="text" name="mytexts[]" id="s" class="form-control tgl" required="required" placeholder="Tanggal Transaksi"/></td><td><input type="text" name="mytexts[]" id="demo'+x+'" class="form-control numeric" required="required" placeholder="Only Number" /></td><td><input type="text" name="mytexts[]" id="s" class="form-control" required="required" placeholder="Keterangan"/></td><td><input type="file" name="mytexts[]" id="s" class="small" required="required"/></td><td><a href="#" class="remove_field btn btn-danger">Remove</a></td></tr>'); 
      //re-init mask money to apply new added input 
      $(wrapper).append(i); //add input box 

     } 


    }); 


$(wrapper).on('click', '.remove_field', function(e){ //Once remove button is clicked 
     e.preventDefault(); 
     $(this).closest("tr").remove(); //Remove field html 
     x--; //Decrement field counter 
    }); 



}); 

$("#demo1").maskMoney({prefix:'Rp ', allowNegative: true, thousands:'.', decimal:',', affixesStay: false}); 

Der Lauf Schnipsel meines Codes können here

Das Problem auf Feld „Total Transaksi“, MaskMoney Notworking,

erste Feldarbeit fein gefunden werden, aber wenn Sie den Knopf neues Feld hinzufügen = NICHT.

Ich habe im Internet gesucht, aber die Antwort entgeht mir immer noch.

Dank

+0

Hallo @Ofri, es gibt keinen Code in Pastebin ist ... -> https://jsfiddle.net/kangtupit/xhgtrpcm/ –

+0

https://jsfiddle.net/kangtupit/xhgtrpcm/ kann man wieder cek sein – Ofri

Antwort

1

Wenn Sie die maskMoney() Methode ausführen, können Sie es nur einmal ausgeführt; am Anfang deiner Seite laden. Danach haben andere neue Felder nicht die Bindung, die maskMoney() bietet. Sie müssen entweder an jede neue Gruppe von Elementen erneut binden oder event delegation verwenden. Es sieht nicht wie das maskMoney Plugin eine Funktion zu übertragen hat, damit Sie sich auf die Erstellung der einzelnen Tasten neu bindet:

http://jsfiddle.net/rmj3ryer/1/

+1

sebelumnya saya sudah mencoba tapi gagal, tapi terimakasih sudah membantu saya. Kode und Berjalan Bagus. sempurna. Gelöst – Ofri

+1

Froh, dass ich helfen könnte :) –

Verwandte Themen