私はツールバーの検索を有効にしてJqGridを持っています。私の列の1つはdatetime列で、検索フィールドはjquery datepickerです。 datepickerの問題は、空の値を持つことはできませんが、このフィールドはフィルタなので空にすることができます。それで、idpのように、フィールドをクリアする日付ピッカーの近くに小さなボタンを追加することです。 これを行う方法、またはクライアント側からdatepickerをクリアする方法はありますか。ここでJqGrid、ツールバーの検索欄にクリアボタンを追加
列のコードは、あなたの助けを事前に
{ name: 'Period', index: 'Period', align: 'center', formatter: 'date', formatoptions: { newformat: 'F, Y' }, width: '70px', search: true,
searchoptions: {
dataInit: function (el) {
$(el).datepicker({
yearRange: "-5:+1",
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'MM, yy',
onClose: function (dateText, inst) {
var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('disable');
$(this).datepicker('setDate', new Date(year, month, 1));
$(this).datepicker('enable');
$("#jqgCompLine")[0].triggerToolbar();
},
beforeShow: function (input, inst) {
if ((datestr = $(this).val()).length > 0) {
year = datestr.substring(datestr.length - 4, datestr.length);
month = jQuery.inArray(datestr.substring(0, datestr.length - 6), $(this).datepicker('option', 'monthNames'));
$(this).datepicker('option', 'defaultDate', new Date(year, month, 1));
$(this).datepicker('setDate', new Date(year, month, 1));
}
}
});
}
},
感謝です!
こんにちはオレグ、あなたの答えをありがとう。日付ピッカーのフォーマットについては、この[投稿](http://stackoverflow.com/questions/2208480/jquery-date-picker-to-show-month-year-only)に触発されています。 – LotuX
@LotuX:ようこそ!私はそれが間違っているとは言いませんでした。最も大きな問題は、入力データ**には1日が必要であることです。日にちが1でない日付があれば、ユーザーは何の違いも見られず、検索も失敗します。バグ修正を適用した後、問題は解決しましたか? – Oleg
実際、datePickerでの検索では、datepickerから月と年を取得し、月間全体として選択クエリを作成した後、これが問題なく動作します。私は私のdatpickerが価値を強制するものを知らないのであなたのdatepickerが空であることができる方法を知らないことを認めなければならない。 – LotuX