2016-03-25 19 views
0

私はajaxを使用して、送信時にPHPコードにデータを送信します。 これで、ajaxのパラメータデータを他の条件から動的に作成する方法はありますか? コードはこのように見えた:ajaxパラメータの動的データ

$('#print-laporan').click(function() { 
    var result = $("#hasil-pencarian").clone().end().html(); 

    if (jenis_laporan === 'bulanan') { 
     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_bulanan') ?>"; 
     dataForAjax = ??? 

    } else if (jenis_laporan === 'mingguan') { 

     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_mingguan') ?>"; 
     dataForAjax = ??? 
    } else { 
     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_harian') ?>"; 
     dataForAjax = ??? 
    } 

    $.ajax({ 
     url: url_l, 
     type: 'POST', 
     data: ??? // I want to make it dynamic based 'dataForAjax' above, 
     success: function() { 
      console.log(url_l); 
      window.open("<?php echo base_url() . 'assets/tmp/file_laporan.pdf' ?>", "_blank", "top=25, left=250, toolbar=no, width=1000, height=600"); 

     }, 
     error: function() { 
      alert('Error'); 
     } 
    }); 


}); 

ただ、私はそれが本当のことができますどのように

if jenis_laporan == 'bulanan' {data : {firstDate : $('some_selector').val(), lastDate : $('some_selector').val(), result: result } 

if jenis_laporan == 'harian' {data : {date : $('some_selector').val(), result: result }} ` 

を言うの?

+0

'dataForAjax'にデータを割り当て、その変数を' ajax'関数内の 'data'に代入すると、コードはうまくいきません。何が起こりますか? – Technoh

+0

私は、dataForAjaxをその条件の中でどのように宣言するのでしょうか? –

+0

変数をデータに渡すだけですか? 'data:dataForAjax、' – Vincent

答えて

0

これがあなたの探しているものかどうかわかりません。そうでない場合は、さらに説明してください。

$('#print-laporan').click(function() { 
    var result = $("#hasil-pencarian").clone().end().html(); 

    if (jenis_laporan === 'bulanan') { 
     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_bulanan') ?>"; 
     dataForAjax = { 
      firstDate: $('some_selector').val(), 
      lastDate : $('some_selector').val(), 
      result: result 
     } 
    } else if (jenis_laporan === 'mingguan') { 
     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_mingguan') ?>"; 
     dataForAjax = { 
      // Whatever you want 
     } 
    } else { 
     url_l = "<?= site_url('members/it/p_request/generate_pdf_laporan_harian') ?>"; 
     dataForAjax = { 
      date : $('some_selector').val(), 
      result: result 
     } 
    } 

    $.ajax({ 
     url: url_l, 
     type: 'POST', 
     data: dataForAjax, 
     success: function() { 
      console.log(url_l); 
      window.open("<?php echo base_url() . 'assets/tmp/file_laporan.pdf' ?>", "_blank", "top=25, left=250, toolbar=no, width=1000, height=600"); 
     }, 
     error: function() { 
      alert('Error'); 
     } 
    }); 
}); 
関連する問題