2016-05-09 34 views
0
の後に検索テキストを削除します

私はfree-jqGridを使用し始めました:https://github.com/free-jqgrid。 XMLデータを返す古いサーバースクリプトで作業しています。以前は古いバージョンのjqGridを使用していましたが、この新しいfree-jqGridバージョンにアップグレードすることを検討しています。free-jqGrid filterToolbarは

問題は、フィルタツールバーにあります。

$("#jqGrid").jqGrid('filterToolbar'); 

私は、フィルタツールバーを記入し、Enterキーを押しますと、サーバ要求が成功すると、フィルタリングされたデータは、それが正しくロードのように見える...しかし、私はちょうど、ツールバーに入力した単語をきれいに拭いています。以前は、単語やフレーズがそこにとどまることになりました。

検索フレーズを残すオプションがあるのか​​、サーバーから特別な値を返す必要があるのでしょうか?

ありがとうございます!ここで

は、ウェブコードです:

<script src="/jqGrid/js/jquery-1.11.0.min.js"></script> 
<script src="/CSS/blue_and_yellow/jquery-ui.min.js" type="text/javascript"></script> 
<link rel="stylesheet" type="text/css" media="screen" href="CSS/blue_and_yellow/jquery-ui.css" /> 

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.13.2/css/ui.jqgrid.min.css"> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.13.2/js/jquery.jqgrid.min.js"></script> 

<h1>Shipping History</h1> 
<button id="back_to_shipping_menu">Back to Shipping Menu</button> 
<table id="jqGrid"></table> 
<div id="jqGridPager"></div> 

<style type="text/css"> 

    .ui-jqgrid-btable { 
     font-size: 14px; 
    } 

</style> 

<script type="text/javascript"> 

jQuery(function($){ 

    $('#back_to_shipping_menu').button().click(function(){ 
     window.location.href = "/index.php/operations/production/shipping" 
    }); 

    var lastSel; 
    $("#jqGrid").jqGrid({ 
     url:'/phpAJAX/Master/master_grid_v1.php', 
     postData:{ 
      'arg1':'new_shipping_history' 
     }, 
     height: 'auto', 
     shrinkToFit: true, 
     width: Math.floor($(window).width()*.78), 
     datatype: 'xml', 
     mtype: 'POST', 
     colNames:[ 
      'row_id', 
      'Ship Date', 
      'Insert/Label', 
      'JobNum', 
      'Qnty Shipped', 
      'Ship_Type', 
      'Carrier', 
      'Time', 
      'Status', 
      'Confirm', 
      'Date Confirm', 
      'Customer' 
     ], 
     colModel:[ 
      {width:20,name:'row_id',hidden:true}, 
      {width:20,name:'ship_date'}, 
      {width:13,name:'insert_label'}, 
      {width:13,name:'jobnum'}, 
      {width:17,name:'Qnty_Shipped', formatter:'number', formatoptions: {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 0, defaultValue: "0"}}, 
      {width:20,name:'Ship_Type', edittype:'select'}, 
      {width:25,name:'Carrier', edittype:'select'}, 
      {width:20,name:'Time', edittype:'select'}, 
      {width:20,name:'Status', edittype:'select'}, 
      {width:10,name:'Ship_Confirm'}, 
      {width:20,name:'ship_ts', formatter: 'date', formatoptions: { srcformat: 'Y-m-d H:i:s', newformat: 'm/d/Y'}}, 
      {width:20,name:'Customer'} 
     ], 
     sortname: 'ship_ts', 
     sortorder: 'desc', 
     viewrecords: true, 
     gridview: true, 
     caption: 'Shipping History', 
     rowNum: 20, 
     rowList:[20,50,100], 
     pager: '#jqGridPager' 
    }); 
    $("#jqGrid").jqGrid('navGrid', '#jqGridPager', {edit:false,add:false, del: false, search: false, refresh:true}); 
    $("#jqGrid").jqGrid('filterToolbar'); 

}) 



</script> 
+1

バージョン(4.13.2、GitHubのから最新のソース):バージョン4.13.2を使用する必要があるなら、あなたは、フィルタを復元削除されますloadFilterDefaults: falseオプションを追加することができますか? **問題を再現するために使用できるデモを提供できますか?**データがローカルで検索される場合、同じ問題がありますか? (サーバーとの追加の通信なしに単純なテストケースで再現できる場合は、問題をテストする方がはるかに簡単です)。 'filterToolbar'の' loadFilterDefaults:false'オプションを追加することで簡単に問題を解決できると思いますが、有用なデフォルトの 'loadFilterDefaults:true'をオフにするのではなく、問題の起点**を見つけてください。 – Oleg

+0

はい、4.13.2です。 CSSとJSの両方。私は自分の質問にWebコードを入れて、サーバーコードを取得しようとしますが、それはちょっとしたモンスターです。 –

答えて

2

は、バグレポートをありがとう!問題:現在のフィルタに基づいてフィルタツールバーを復元する無料のjqGridで実装しました。この機能は、stringResult: trueモードの場合にのみ機能し、jqGridは、詳細検索(multipleSearch: true)の場合と同様に、filtersパラメータ(here参照)内のフィルタに関するすべての情報を送信します。

フィルタツールバーのクリーニングに続いて、レガシー検索での新機能の使用。バグです。無料のjqGridの現在のコードで修正しました(the commit参照)。あなたが使用自由jqGridの

$("#jqGrid").jqGrid('filterToolbar', { loadFilterDefaults: false }); 
+0

'loadFilterDefaults:false'は私の問題を解決しました。新しいバージョンではこれを削除します。 –

関連する問題