看官網的php 也不像會有search的結果...
最後還是上網找
server.php (同官網範例,就在下sql那段 加入這個)
$where = "WHERE 1=1 " . constructWhere();
$SQL = "SELECT ... FROM xxx $where ORDER BY $sidx $sord LIMIT $start , $limit";
...
//--------------------------
function constructWhere(){
$wh = "";
$searchOn = $_REQUEST['_search'];
if($searchOn=='true')
{
$fld = $_REQUEST['searchField'];
//過濾欄位,填入會用到search的欄位
if(!( $fld=='id' || $fld =='name'))
{
$fldata = $_REQUEST['searchString'];
$foper = $_REQUEST['searchOper'];
//construct where
$wh .= " AND " . $fld;
switch ($foper) {
case "bw":
$fldata .= "%";
$wh .= " LIKE '" . $fldata."'";
break;
case "eq":
if(is_numeric($fldata)) {
$wh .= " = " . $fldata;
}else{
$wh .= " = '" . $fldata."'";
}
break;
case "ne":
if(is_numeric($fldata)) {
$wh .= " <> " . $fldata;
}else{
$wh .= " <> '" . $fldata . "'";
}
break;
case "lt":
if(is_numeric($fldata)) {
$wh .= " < " . $fldata;
} else {
$wh .= " < '" . $fldata."'";
}
break;
case "le":
if(is_numeric($fldata)) {
$wh .= " <= " . $fldata;
}else {
$wh .= " <= '" . $fldata."'";
}
break;
case "gt":
if(is_numeric($fldata)) {
$wh .= " > ".$fldata;
} else {
$wh .= " > '".$fldata."'";
}
break;
case "ge":
if(is_numeric($fldata)) {
$wh .= " >= ".$fldata;
} else {
$wh .= " >= '".$fldata."'";
}
break;
case "ew":
$wh .= " LIKE '%".$fldata."'";
break;
case "ew":
$wh .= " LIKE '%".$fldata."%'";
break;
default :
$wh = "";
}
}
return $wh;
}
Reference
忘了哪看的了...
接收完成的callback function
jQuery("#tbSearch").jqGrid({
datatype:function(postdata) {
jQuery.ajax({
url: "server.php", //原本寫在外面的,現在外面那個就參考用
data:postdata,
datatype:"json",
complete:function(xmldata,stat){
if(stat=="success") {
//xmldata是XMLHttpRequest, 所以如果是datatype的話,就要 xmldata.responseXML
alert(xmldata.responseText);
}
}
});
},
...
Reference
Data Manipulation
jqGrid 的多字段查詢
7 則留言:
Hi, 您好
我最近也在研究jqGrid,我在用editing form時發現輸入框和標題都不對齊,在網路上的範例每一個輸入欄位都有線區隔開來,但我的卻沒有,我用的是3.8.1版本的,不知您有沒有這個問題。
不知道你說的沒對齊是如何
http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing
鏈結上是form editing的圖片,輸入框和標題都有對齊,中文的話我也沒看到有沒對齊的狀況,線... 倒是沒看到
我是用v3.6.5,真快 已經到v3.8.1了
感謝您的回覆,依您提供的鏈結的圖來說,我說的沒對齊是指Data和它的textbox離得很遠且看起來像是有換列,wiki的圖就很整齊,且Data、Amount、Tax、Total和Notes這幾列都有用線區隔開來,但我用3.8.1的就沒有這些線,我查過formoption好像也沒有設定的參數,我在想會不會是3.8.1本身API就有問題,您說您是用3.6.5的,不曉得您方不方便把3.6.5在程式中會引用到的css和js和java script的code貼給我,感激不盡!!
哈~我改用了3.6.5,問題就解決了,果然是3.8.1的問題,不管如何~感謝你的回覆哦^^
有解決就好
我還正準備用v3.8.1做一個form editing試試
我現在又遇到一個問題@@,我把EditUrl設到我的edit.aspx,但我只接得到oper和rowid的參數,其它的參數我都request不到,不知是哪裡出了問題,可否請教你在editurl的那隻程式是如何接參數的,接不到和設定jqGrid有關係嗎?
用post接在jqgrid設的欄位
ex.
/* jqgrid */
...
[{name:'name',editable: true}],
editurl: 'edit.php',
...
/* php */
$_POST['name'];
張貼留言