2017-03-21 49 views
1
$(document).on('submit','#form_pem', function(event){ 
      event.preventDefault(); 
      var kodebayar = $('#kodebayar').val(); 
      var nama = $('#nama').val; 
      var harga = $('#harga').val; 
      var postData = new FormData(this); 

      if(kodebayar != '' && nama != '' && harga != ''){ 
       $.ajax({ 
        url:"<?=site_url('bpem/user_action')?>", 
        method:"POST", 
        data:postData, 
        contentType:false, 
        proccessData:false, 
        success: function(data) 
        { 
         alert(data); 
         $('#form_pem')[0].reset(); 
         $('#modalpem').modal('hide'); 
         dataTable.ajax.reload(); 
        } 

       }); 

      } 
      else{ 
       alert("Silahkan isikan semua data!"); 
      } 
     }); 

在「追加」這是我的JS類型錯誤:調用的對象不實現接口FORMDATA

<div class="modal fade text-xs-left" id="modalpem" tabindex="-1" role="dialog" aria-labelledby="myModalLabel35" aria-hidden="true"> 
             <div class="modal-dialog modal-sm"> 
             <form method= "post" id="form_pem"> 
             <div class="modal-content"> 
              <div class="modal-header"> 
              <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 
               <span aria-hidden="true">&times;</span> 
              </button> 
              <h3 class="modal-title text-xs-center">Tambah Biaya Pembayaran</h3> 
              </div> 
              <div class="modal-body"> 
               <fieldset class="form-group floating-label-form-group"> 
                <label for="Kode">Kode <span class="required">*</span></label> 
                <input type="text" class="form-control" name="kodebayar" id="kodebayar" placeholder="Kode Pembayaran"> 
               </fieldset> 
               <fieldset class="form-group floating-label-form-group"> 
                <label for="nama">Nama <span class="required">*</span></label> 
                <input type="text" class="form-control" name="nama" id="nama" placeholder="Nama Pembayaran"> 
               </fieldset> 
               <fieldset class="form-group floating-label-form-group"> 
                 <label for="projectinput7">Biaya Perbulan <span class="required">*</span></label> 
                 <div class="input-group"> 
                  <span class="input-group-addon">Rp.</span> 
                  <input type="number" class="form-control" placeholder="Biaya Perbulan" aria-label="Amount (to the nearest dollar)" name="harga" id="harga"> 
                  <span class="input-group-addon">.00</span> 
                 </div> 
               </fieldset> 
              </div> 
              <div class="modal-footer"> 
               <input type="reset" class="btn btn-grey" value="Bersihkan"> 
               <input type="submit" class="btn btn-warning" name="action" id="action" value="Tambah"> 
              </div> 
             </div> 
             </form> 
             </div> 

            </div> 

這就是視圖。 但我得到了一個錯誤,如

TypeError:'append'在未實現接口FormData的對象上調用。

我忘記了要添加的內容嗎?我該怎麼辦?謝謝你們的幫助

回答

2

極品錯字:)修正

proccessData:false 

應該

processData: false 

爲了避免FormData錯誤請確保ajax選項必須像

$.ajax({ 
    url : "url", 
    type: "POST", 
    data : postData, 
    processData: false, 
    contentType: false, 
    success:function(data, textStatus, jqXHR){ 
     // 
    }, 
    error: function(jqXHR, textStatus, errorThrown){ 
     //if fails  
    } 
}); 
+0

這種錯字不會導致錯誤。 '$ .ajax'的設置參數中任何錯誤的名稱屬性都會被忽略。 – hindmost

+0

呵呵。 Thankyou它的幫助:) – Fiona

+0

@ behindmost是的你是正確的。它會忽略,但是發佈'FormData'' processData'鍵是必需的。所以我指出要避免這個錯誤。 –

相關問題