通过$ .getJSON搜索不起作用?

时间:2016-03-28 06:49:55

标签: jquery json ajax

我在谷歌搜索这个问题,但仍未找到答案。

我尝试使用getJSON方法通过Jquery JSON创建Seaching。这是我的代码

  

PHP文件:   的 report_cari.php

<?php
header('Content-Type: application/json');
include "koneksi.php";
ini_set('display_errors', '0');


$sql = "SELECT RID,MESIN,DATE(HARI_TGL)AS TGL,TGL_REAL,PRODUK FROM adonan WHERE DATE(HARI_TGL) LIKE '%".$_REQUEST['term']."%' OR PRODUK LIKE '%".$_REQUEST['term']."%' GROUP BY RID ORDER BY TGL_REAL DESC";

$hasil = mysqli_query($mysqli, $sql);
$results = array();

foreach($hasil as $row){

     $results[] = array(
          'RID'=> $row[RID],
          'MESIN' => $row[MESIN],
          'TGL' => $row[TGL],
          'TGL_REAL' => $row[TGL_REAL],
          'PRODUK' => $row[PRODUK],
     );
}


$json = json_encode($results);

echo $json;
?>
  

和javascipt:report.php

    <input id="CARILAH" data-type="search">


<div style="width: 100%; height: 400px; overflow: auto">
        <table data-role="table" id="tabel1" data-mode="columntoggle" class="ui-body-d ui-shadow table-stripe ui-responsive" data-column-btn-theme="b" data-column-btn-text="Columns to display..." 
        data-column-popup-theme="a" data-input="#filterTable-input">
         <thead>
           <tr class="ui-bar-d">
             <th data-priority="1" align='center'>RID</th>
             <th data-priority="1" align='center'>MESIN</th>
             <th data-priority="1" align='center'>TGL</th>
             <th data-priority="1" align='center'>WAKTU</th>
             <th data-priority="1" align='center'>PRODUK</th>
           </tr>
         </thead>
         <tbody>
            <!--div id='records_table'></div-->
         </tbody>
         </table>
</div>  
  

的javascript

 <script src="jqm2/jquery-2.1.4.min.js"></script>
    <script src="jqm2/jquery.mobile-1.4.5.min.js"></script>
    <script src="validation/jquery.validate.js"></script>
    <script>
    $(document).ready(function(){

/*for view data*/
    $.ajax({
      type: "POST",
      url: "report_action.php",
      dataType: "json",

     success: function (response) {

        // alert(JSON.stringify(response));

        var trHTML = '';
        $.each(response, function (i, item) {

            trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';     
        });
        $('#tabel1 tbody').append(trHTML);
    },



});


   /*for searching data*/
   $("#CARILAH").keyup(function(){
      var oke = $(this).val();

          //alert(oke);
          $.getJSON("report_cari.php", function(result){

                 if (!json[0]) {
                    //console.log("NO DATA!")
                    alert("tidak ada data");
                 }          
                 else{
                         var trHTML = '';
                      $.each(response, function (i, item) {

                      trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';       
                     });
                    $('#tabel1 tbody').append(trHTML); 

                 }               


          });

     });

});
</script>

此文件结合了ajax用于搜索和View数据。 但不行。 查看数据工作。搜索数据不起作用。如何使用$ getJSON keyup事件从json_encode获取数据?

  

nb:report_cari.php工作并可以生成JSON。

任何人都可以提供帮助吗?

提前感谢。

1 个答案:

答案 0 :(得分:1)

将搜索到的参数发送到服务器,如下所示,$.getJSON具有可选参数数据

$("#CARILAH").keyup(function(){
      var oke = $(this).val();

          $.getJSON("report_cari.php",{term : oke}, function(result){

                 if (result.length == 0) {
                    console.log("NO DATA!")

                 }          
                 else{
                         var trHTML = '';
                      $.each(result, function (i, item) {

                      trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';       
                     });
                    $('#tabel1 tbody').append(trHTML); 

                 }               


          });

     });