1

jgridに複雑な検索機能を実装しようとしています。しかし、ユーザーが検索ボタンを押す前に、ユーザーが検索ボックスで指定した値を変更したいと思います。

ここに画像の説明を入力してください

  1. ここで値を確認できます。17 20 35 36 37 53 54これらの値をコンマで区切ってほしいので、findを押す前に、テキストボックスの値を変更したいので、どうすればよいですか?

  2. さらに、たとえばこの検索ボックスの外観をカスタマイズする方法を知りたいのですがidis inユーザーが値を入力して検索を押すだけのユーザーフレンドリーなUIが必要ですが、この検索の外観を変更する方法がわかりませんボックスに独自の外観を注入し、検索ボックスをドラッグ不可にします

4

3 に答える 3

2

split()スペースで配列に分割してから、区切り文字としてコンマを使用して配列を再度分割するために使用できます.join()(とにかくデフォルト)。

$("input[type='text']").blur(function(){
  var value = this.value;
  this.value = value.split(' ').join(',');
});

デモ:http://jsfiddle.net/mJaqm/

于 2012-09-24T05:48:26.070 に答える
1

必要に応じて、ユーザー入力のさらに複雑な変更を実装する方法を示した回答を読むことをお勧めします。

[検索]ダイアログの場合、ツールバーの検索で使用するのと同じ方法でonSearchコールバックを使用できます。beforeSearch

主なアイデアは、メソッドpostDataに関してjqGridの内部パラメーターの参照を取得できるということgetGridParamです。のfiltersプロパティはpostData、JSON文字列としてシリアル化されたフィルターを表します(詳細については、ドキュメントを参照してください)。したがって、必要に応じpostData.filtersて(を使用して)modifyを使用してオブジェクトに変換し$.parseJSON、(JSON.stringifyを使用して)JSON文字列に変換し直して、結果をに戻すことができpostData.filtersます。内部ですべての変更を行うonSearchか、beforeSearchコールバックすると、変更されたフィルターが使用されます。

于 2012-09-24T11:03:34.837 に答える
0

これをテキストボックスのイベントに追加できます。このonBlurイベントは、カーソルが離れたときに発生します。

$("#theid").blur(function() {
    value = value.split(' ').join(',');
});
于 2012-09-24T05:50:09.623 に答える