2011-08-09 13 views
1

我有一個jqgrid,我啓用了多重搜索,我想將「AND」和「OR」組操作文本更改爲相應的值用我的母語。Jqrid搜索對話框 - 如何本地化groupOps文本值「AND」和「或」

我想改變

  • ,並與VE
  • 或與VEYA

這裏是我的代碼:

jQuery("#kontrollist").jqGrid('navGrid', '#controllistpager', 
     { 
     edit: true, 
     add: true, 
     del : true, 
     search: true 
     }, 
     { top: 10, left: 300, jqModal: false, closeOnEscape: true }, // edit options 
     {top: 10, left: 300, jqModal: false, closeOnEscape: true, reloadAfterSubmit: true }, // add options 
     {top: 100, left: 200, jqModal: false, closeOnEscape: true }, // del options 
     // search options 
     { 
     top: 100, 
     left: 250, 
     jqModal: false, 
     closeOnEscape: true, 
     groupOps: [{ op: "AND", text: "all" }, { op: "OR", text: "any"}], 
     //showQuery: true, 
     multipleSearch: true, 
     }, 
     {top: 100, left: 200, jqModal: false, closeOnEscape: true} // view options 
    ); 

我試圖改變的「, 」運算「 屬性groupOps「like

groupOps: [{ op: "VE", text: "all" }, { op: "VEYA", text: "any"}], 

和像

groupOps: [{ op: "AND", text: "VE" }, { op: "OR", text: "VEYA"}], 

這既沒有工作。 有沒有辦法改變這些值?任何幫助表示讚賞,在此先感謝。

回答

1

這是一個很好的問題!從我+1。

當前的jqGrid代碼爲查詢中使用的顯示文本和value屬性使用相同的值構建相應的<select>元素。作爲一種解決辦法,我建議你在定義函數updateGroupOpText

var updateGroupOpText = function ($form) { 
     $('select.opsel option[value="AND"]', $form[0]).text('My ADD'); 
     $('select.opsel option[value="OR"]', $form[0]).text('My OR'); 
     $('select.opsel', $form[0]).trigger('change'); 
    }; 

,並把它作爲onInitializeSearch和​​事件的事件處理程序:

jQuery("#kontrollist").jqGrid('navGrid', '#controllistpager', 
    { add: false, edit: false, del: false }, 
    {}, {}, {}, 
    { // search options 
     multipleSearch: true, 
     onInitializeSearch: updateGroupOpText, 
     afterRedraw: updateGroupOpText 
    } 
); 

請參見相應的演示here,顯示像對話以下:

enter image description here

你SH只需將「我的地址」和「我的OR」更改爲您想要的文本。

+0

感謝您的回答,我希望他們參數化他們在下一個版本:) – tthrashy

+0

@darkbluw:不客氣!我希望是一樣的。 :-) – Oleg