2010-06-09 82 views
0

我試圖找到工作這個代碼:搜索選項:jqGrid的+ PHP

$("#list").jqGrid({ 
        url: 'employers.php', 
        datatype: 'json', 
        mtype: 'POST', 
        postData: {c : "", n: "", a: "", d: "", t: "", e: "", f: "", g: $('#selectSalary').value(), p: "", call: "report"}, 
        colNames: ['ID','Name', 'Surname', 'Department', 'E-mail','Phone', 'Title in'], 
        colModel: [ 
         { name:'rows.id',    index: 'id', search:true, jsonmap: 'id', width: 50, align: 'left', sortable:true}, 
         { name:'rows.name',    index: 'name', jsonmap: 'name', width: 150, align: 'left'}, 
         { name:'rows.surname',    index: 'surname', jsonmap: 'surname', width: 240, align: 'left'}, 
         { name:'rows.department',    index: 'department', jsonmap: 'department', width: 330, align: 'left'}, 
         { name:'rows.email',     index: 'email',  jsonmap: 'email',width: 200, align: 'left'}, 
         { name:'rows.phone',    index: 'phone', jsonmap: 'phone', width: 170, align: 'left'}, 
         { name:'rows.title', index: 'title', jsonmap: 'title',width: 120, align: 'left'}], 

        pager: '#pager', 
        rowNum: 8, 
        autowidth: true, 
        rowList: [10, 20], 
        sortname: 'id', 
        sortorder: 'asc', 
        viewrecords: true, 
        caption: "Employer's Salary", 
        jsonReader : { 
            root: "rows", 
            repeatitems: false 
            }, 
        height: 350, 
        width: 900 
      }); 


$("#list").jqGrid('navGrid','#pager',{search:true, searchtext: "search",edit:false,add:false,del:false}); 

我使用的HMTL:

<div id="report"> 
     <table id="list"></table> 
     <div id="pager"> 
     </div> 
<div> 

而且PHP代碼:

$total_pages = 0; 
$limit=10; 
//Using QCubed, a PHP Framework and PDO 
$count = Employers::CountAll(); 
if($count> 0) 
$total_pages= ceil($count/$limit); 
else 
$total_pages=0; 
$cnx = new PDO("mysql:host=localhost;dbname=appsms","root",""); 
$rows = array(); 
$strQuery="select id, name, surname, department, phone, email, title from Employer join Titles on " . 
          " (employers.title = Titles.id) and (employers.g = '" .$this->g . 
          "') order by id;"; 

$stmt = $cnx->prepare($strQuery); 
$stmt->execute(array("report")); 
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC); 
$response->page = 1; 
$response->total= $total_pages; 
$response->records = sizeof($rows); 

$i=0; 
foreach($rows as $result){ 
$response->rows[$i] = $result; 
$i++; 
} 


echo json_encode($response); 

它從PHP中加載查詢,但搜索選項不能在「cedula」列上運行排序功能。我需要做什麼?。提前致謝。

回答

1

我可以在您的服務器代碼'order by id'中看到在sidxsord參數(請參閱http://www.trirand.com/jqgridwiki/doku.php?id=wiki:first_grid作爲正確的服務器代碼的示例)的值上使用indepand。

,你必須採取conseriration,如果你在jqGrid的其他參數使用datatype: 'json'sidxsord_search將被髮送到服務器的主要作用。搜索選項(數據過濾)同樣適用,請參閱http://www.trirand.com/jqgridwiki/doku.php?id=wiki:singe_searching瞭解更多信息。