2012-06-07 56 views
2

我有兩個關於列選擇器的問題。首先是我爲我的網格使用標題分組,例如,我有一個Display Type標題組,其中包含兩列「類型和大小」,另一個標題爲「存儲」的標題組,其中包含兩個類型和大小子列。當我使用columnChooser時,它顯示:Type Size Type Size。有什麼方法可以將列標題名稱預先添加到它們嗎?我還在colModel中將這些列命名爲DS_Size DS_Type ....有什麼方法可以使用這些列colModel名稱而不是colNames? 我的第二個問題是我的搜索部分已經使用了erichynds multiselect(請參閱link),並且它與jqGrid使用的版本有衝突(請參閱also)。我怎麼才能重命名erichynds多選插件到別的東西?我沒有找到任何$ .fn。在它的源代碼帶列標題的JqGrid列選擇器

其實我問了三個問題:P,但前兩個是一個:d

感謝您閱讀我的問題:)

回答

1

您的主要問題的答案,你會在the documentation找到的jqGrid的:

列選擇不與頭分組

我屏幕ä兼容在Header Grouping實現的許多部分,我知道columnChooser的代碼。所以我知道如何修改columnChooser的代碼以包含對標題分組的支持。主要的問題是,只是爲了消除這種限制,這是相當多的工作。 jqGrid是免費開源產品。誰願意花時間去消除這些限制?我花了很多時間在stackoverflow上幫助其他人,但我必須養活我的家人:-)。如果你真的需要這樣的功能,你可以自己實現這個功能。您將需要修改columnCooser的最重要信息,您將在the answer中找到。

現在談談你的問題的最後一部分:誰在多選部件之間產生「衝突」。在Eric Hynds jQuery UI MultiSelect Widget(請參閱here)的更改列表中簡單查看該插件表明該插件處於活動狀態。在columnChooser中使用的另一端another one(見here)將不會更改。儘管如此,它的工作原理可以在以後使用你有什麼「衝突」?在舊版本的Eric Hynds jQuery UI MultiSelect Widget中,它被使用了相同的部件名稱"ui.multiselect",這是衝突的。許多後期版本使用"ech.multiselect"名稱(請參閱here)。所以我不知道你的意思是什麼衝突。可以發現,你應該得到最後一個版本的代碼。

在我的回答結束時,我會建議您閱讀the answer,其中我建議對columnChooser進行一些修改,以允許提高可見性並使Column Chooser的對話框真正可調整大小。可以使用$.jgrid.extend({columnChooser : function(opts) {...}});將原始版本columnChooser覆蓋爲新版本。

+0

謝謝您的快速回復。我將11660行的jqGrid源代碼從'(this.hidden?「」:「selected ='selected'」)+「>」+ colNames [i] +「」);'to'(this.hidden? 「:」selected ='selected'「)+」>「+ colModel [i] .name.replace('_','')+」「);'和我的問題現在解決了:)關於第二個問題,當我加載我的網頁我希望調用$('#id')。multiselect(.....)將我的選擇轉換爲複選框下拉列表,但我的搜索面板的所有選擇將以columnChooser選擇格式。但謝謝你的鏈接,我必須研究它們:) – Soheil

+0

@Sheheil:不客氣!如果您在解決衝突時遇到問題,可以發佈包含可用於重現問題的演示的新問題。 – Oleg