Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Cara select date range dengan modal lalu muncul ke table

saya sedang membuat select date range dengan modal tetapi ketika klik save data nya tidak ter save kira-kira kenapa ya ?

image.png

image.png

seharusnya data masuk ke table tersebut

web.php

//Route Report Data Karyawan
Route::get('/reportDataKaryawan', 'reportDataKaryawanController@previewForm')->name('reportDataKaryawan');
Route::get('/previewpertanggal/{tglawal}/{tglakhir}', 'reportDataKaryawanController@previewPertanggal')->name('reportDataKaryawan');

controller

    public function previewForm()
    {
        return view('halaman.reportDataKaryawan');
    }

    public function previewPertanggal(Request $request, $tglawal, $tglakhir)
    {
        $data = dataKaryawan::whereBetween('created_at', [  $tglawal,   $tglakhir])->get();
        return response()->json($data);

blade

<section class="section">
    <div class="card">
        <div class="card-header">
            <div class="col py-6">
                <h5 class="m-0 font-weight-bold text-primary">Report Data Karyawan</h5>
            </div>

                <button type="button" style="float: right; " data-toggle="modal" data-target="#quoteForm" class="btn btn-primary">
                    <i class="fa fa-print"></i>
                 Cetak  PDF
                </button>
                <button type="button" style="float: right; margin-right:10px; " data-toggle="modal" data-target="#quoteFormPreview" class="btn btn-secondary">
                    <i class="fa fa-file-archive-o"></i>
                    Preview
                </button>
            <div class="card-body">
                <div class="dataTable-wrapper dataTable-loading no-footer sortable searchable fixed-columns">
                    <div class="dataTable-container">
                        <table class="table table-striped dataTable-table  table-hover" id="table1">
                            <thead>
                                <tr>
                                     <th>No</th>
                            <th>Nama Karyawan</th>
                            <th>NIK</th>
                            <th>Nama Jabatan</th>
                            <th>Status</th>
                                </tr>
                            </thead>
                        </table>
                    </div>
                </div>
            </div>
        </div>

        <!--GET a QUOTE MODAL Preview-->
<div class="modal fade" id="quoteFormPreview" tabindex="-1" role="dialog" aria-labelledby="dateRangeModalLabel" aria-hidden="true">
  <div class="modal-dialog modal-dialog-centered" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="dateRangeModalLabel">Select Date Range</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <form id="dateRangeForm">
          <div class="form-group">
            <label for="startDate">Start Date</label>
            <input type="date" class="form-control" id="tglawal" name="tglawal">
          </div>
          <div class="form-group">
            <label for="endDate">End Date</label>
            <input type="date" class="form-control" id="tglakir" name="tglakir">
          </div>
        </form>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary" id="preview">Preview</button>
      </div>
    </div>
  </div>
</div>

</section>

@include('sweetalert::alert')

@endsection
@push('script')
<script>
 $(document).ready(function() {
  // Attach an event listener to the search button
  $('#preview').click(function() {
    // Retrieve the selected start and end dates from the form input fields
    var tglawal = $('#tglawal').val();
    var tglakhir = $('#tglakir').val();
  });
});

    </script>
    @endpush
avatar chrrriann
@chrrriann

15 Kontribusi 2 Poin

Diperbarui 1 tahun yang lalu

2 Jawaban:

Jawaban Terpilih

<div>Terdapat beberapa kesalahan pada kode yang diberikan. Beberapa perbaikan yang perlu dilakukan antara lain:<br><br></div><ol><li>Pada form modal, pada input untuk tanggal akhir, terdapat kesalahan penulisan id. Seharusnya diganti dari <strong>tglakhir</strong> menjadi <strong>tglakir</strong>.</li><li>Pada fungsi ajax untuk melakukan request ke server, sebaiknya menggunakan method <strong>GET</strong> karena pada route tertulis menggunakan method <strong>GET</strong>.</li><li>Pada fungsi ajax, terdapat penggunaan <strong>dataType: 'html'</strong> yang menyebabkan hasil respons dari server akan diproses sebagai <strong>HTML</strong>. Padahal, pada controller, respons yang diberikan adalah <strong>JSON</strong>. Sebaiknya, penggunaan <strong>dataType</strong> dihilangkan agar jQuery dapat memproses respons dari server dengan benar.</li><li>Pada controller, pada bagian <strong>$tglawal = $request-&gt;input('tglawal')</strong> dan <strong>$tglakhir = $request-&gt;input('tglakhir')</strong>, sebaiknya dihapus karena nilai <strong>$tglawal</strong> dan <strong>$tglakhir</strong> sudah diperoleh dari parameter route.</li></ol><div><br>Berikut adalah perbaikan kode pada beberapa file:<br><br>web.php<br><br></div><pre>Route::get('/reportDataKaryawan', 'reportDataKaryawanController@previewForm')-&gt;name('reportDataKaryawan'); Route::get('/previewpertanggal/{tglawal}/{tglakhir}', 'reportDataKaryawanController@previewPertanggal')-&gt;name('previewPertanggal');</pre><div><br>Controller<br><br></div><pre>public function previewPertanggal($tglawal, $tglakhir) { $data = dataKaryawan::whereBetween('created_at', [$tglawal, $tglakhir])-&gt;get(); return response()-&gt;json($data); }<br></pre><div><br>Blade<br><br></div><pre>&lt;div class="modal fade" id="quoteFormPreview" tabindex="-1" role="dialog" aria-labelledby="dateRangeModalLabel" aria-hidden="true"&gt; &lt;div class="modal-dialog modal-dialog-centered" role="document"&gt; &lt;div class="modal-content"&gt; &lt;div class="modal-header"&gt; &lt;h5 class="modal-title" id="dateRangeModalLabel"&gt;Select Date Range&lt;/h5&gt; &lt;button type="button" class="close" data-dismiss="modal" aria-label="Close"&gt; &lt;span aria-hidden="true"&gt;&amp;times;&lt;/span&gt; &lt;/button&gt; &lt;/div&gt; &lt;div class="modal-body"&gt; &lt;form id="dateRangeForm"&gt; &lt;div class="form-group"&gt; &lt;label for="startDate"&gt;Start Date&lt;/label&gt; &lt;input type="date" class="form-control" id="tglawal" name="tglawal"&gt; &lt;/div&gt; &lt;div class="form-group"&gt; &lt;label for="endDate"&gt;End Date&lt;/label&gt; &lt;input type="date" class="form-control" id="tglakir" name="tglakir"&gt; &lt;/div&gt; &lt;/form&gt; &lt;/div&gt; &lt;div class="modal-footer"&gt; &lt;button type="button" class="btn btn-secondary" data-dismiss="modal"&gt;Close&lt;/button&gt; &lt;button type="button" class="btn btn-primary" id="preview"&gt;Preview&lt;/button&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt;

&lt;/section&gt;

@include('sweetalert::alert')

@endsection

@push('script') &lt;script&gt; $(document).ready(function() { // Attach an event listener to the search button $('#preview').click(function() { // Retrieve the selected start and end dates from the form input fields var tglaw <br></pre>

avatar adamajalah27
@adamajalah27

120 Kontribusi 40 Poin

Dipost 1 tahun yang lalu

Tanggapan

tapi tetap ketika sudah di ubah ketika di preview tidak ada action dan stuck di modal

<div>Apakah url berubah setelah klik preview? Kalau belum maka jsnya mesti dirubah agar merubah url eksisting.</div>

avatar Ipinppc
@Ipinppc

27 Kontribusi 5 Poin

Dipost 1 tahun yang lalu

Login untuk ikut Jawaban