2

Flexigrid は優れた jQuery グリッドであり、かなりカスタマイズ可能ですが、クイック検索機能では正確な検索しかできません (私の知る限り)。これに対する修正または回避策を知っている人はいますか?「p.query」文字列にワイルドカード文字を追加しようとしましたが、うまくいきません。

参考までに: これは MySQL データベースと PHP で使用するためのものなので、追加しようとしたワイルドカードは '%' でした。

flexigrid.js の "doSearch" 関数は次のとおりです。

doSearch: function () {
   p.query = $('input[name=q]', g.sDiv).val();
   p.qtype = $('select[name=qtype]', g.sDiv).val();
   p.newp = 1;
   this.populate();
},

助けてくれてありがとう!

4

1 に答える 1

1

私が独自に考え出した最善の答えは、適切なワイルドカード文字「%」を使用して、PHP 側の SQL クエリを EQUAL TO 句の代わりに LIKE 句を持つように変更することでした。

クライアント側で検索文字列に追加される javascript/jQuery ワイルドカードを見つけたいと思っていましたが、検索しても答えが見つかりませんでした。

PHPスクリプトで変更した行は次のとおりです。

$searchSql = ($qtype != '' && $query != '') ? "where $qtype like CONCAT('%','$query','%') and UserID = $id" : "where UserID = $id";

それ以外の:

$searchSql = ($qtype != '' && $query != '') ? "where $qtype = '$query' and UserID = $id" : "where UserID = $id";

頑張ってください!

于 2012-01-24T17:50:27.233 に答える