我在谷歌搜索这个问题,但仍未找到答案。
我尝试使用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。
任何人都可以提供帮助吗?
提前感谢。
答案 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);
}
});
});