2014-01-28 87 views
-1

我有一個應用程序,我使用JQGrid顯示數據(我是JQGrid的新手)。申請適用於不懂英語的客戶。因此,我們需要顯示的數據可以通過數據庫以樸素的語言顯示,因爲我需要使用csv文件顯示列名稱,網格標題,加載網格消息.....等。我查過並發現JQGrid沒有直接支持csv。但是,我們可以使用任何其他解決方法來做到這一點?如何導入csv文件到JqGrid

我會顯示我的代碼片段。

jQuery("#jQGrid").jqGrid({ 
     url: 'Handler1.ashx', 
     datatype: 'json', 
     toppager: 'false', 
     height: 300, 
     colNames: [strPersonID, strLastName, strFirstName, strAddress, strCity], 
     colModel: [ 
        { name: 'ID', width: 60, index: 'ID', stype: 'text', search: false, sortable: true }, 
        { name: 'LastName', width: 100, index: 'LastName', stype: 'text', sortable: true }, 
        { name: 'FirstName', width: 100, index: 'FirstName', align: 'center', stype: 'text', classes: 'hyperlink', formatter: 'showlink', formatoptions: { baseLinkUrl: 'http://localhost:58404/About.aspx' } }, 
        { name: 'Address', width: 100, index: 'Address', stype: 'text', search: false, sortable: true }, 
        { name: 'City', width: 100, index: 'City', stype:'select', editoptions:{value:":;Bangalore:Bangalore;Chennai:Chennai;Pune:Pune;Bombay:Bombay;Lucknow:Lucknow;Delhi:Delhi;Agra:Agra"}, sortable: true } 
        ], 
     rowNum: 10, 
     mtype: 'GET', 
     loadonce: true, 
     loadtext: strLoading, 
     rowList: [10, 20, 30], 
     viewrecords: true, 
     sortname: 'ID', 
     sortorder: 'desc', 
     caption: strListEmployeeDetails, 
     shrinkToFit: 'false' 
    }); 

這些列名,loadtext和Caption我必須從csv文件中提取。

爲同後面的代碼:

UIContentController uiContentController = new UIContentController(); 

     string strPersonID = uiContentController.GetText("Start_JqGrid_strPersonID", null); 
     string strLastName = uiContentController.GetText("Start_JqGrid_strLastName", null); 
     string strFirstName = uiContentController.GetText("Start_JqGrid_strFirstName", null); 
     string strAddress = uiContentController.GetText("Start_JqGrid_strAddress", null); 
     string strCity = uiContentController.GetText("Start_JqGrid_strCity", null); 
     string strListEmployeeDetails = uiContentController.GetText("Start_JqGrid_strListEmployeeDetails", null); 
     string strLoading = uiContentController.GetText("Start_JqGrid_strLoading", null); 

     jqGridColConstant = jqGridColConstant + "var strPersonID = '" + strPersonID + "';"; 
     jqGridColConstant = jqGridColConstant + "var strLastName = '" + strLastName + "';"; 
     jqGridColConstant = jqGridColConstant + "var strFirstName = '" + strFirstName + "';"; 
     jqGridColConstant = jqGridColConstant + "var strAddress = '" + strAddress + "';"; 
     jqGridColConstant = jqGridColConstant + "var strCity = '" + strCity + "';"; 
     jqGridColConstant = jqGridColConstant + "var strListEmployeeDetails = '" + strListEmployeeDetails + "';"; 
     jqGridColConstant = jqGridColConstant + "var strLoading = '" + strLoading + "';"; 
     jqGridColConstant = jqGridColConstant + "</script>"; 

if (!Page.ClientScript.IsClientScriptBlockRegistered("jqGridColConstant")) 
      Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "jqGridColConstant", jqGridColConstant); 

我的CSV文件條目是:

246,Start_JqGrid_strPersonID,Person_ID 
247,Start_JqGrid_strLastName,Last Name 
248,Start_JqGrid_strFirstName,First Name 
249,Start_JqGrid_strAddress,Address 
250,Start_JqGrid_strCity,City 
251,Start_JqGrid_strListEmployeeDetails,Employee Details 
252,Start_JqGrid_strLoading,Loading... 

目前這是英文的,但會進一步的客戶會根據自己的需要更改csv文件

這種方法沒有給出預期的結果。 任何解決方案或解決方法? 請幫忙。

回答

0

我很驚訝地知道,沒有人甚至試圖回答我的問題.....

大部分的谷歌搜索的說,沒有直接支持從CSV導入數據/ jqGrid的屬性值。

所以最後經過一些研究,我在自己的問題上得到了答案。它是這樣的:

上面的代碼示例中唯一的變化是在.ascx文件只有在聲明列名的時候,LoadText &標題....

colNames: [''+strPersonID+'', ''+strLastName+'', ''+strFirstName+'', ''+strAddress+'', ''+strCity+''], 
loadtext: ''+strJQGridLoadingMessage+'', 
caption: ''+strCurrentRequestHeaderCaption+'', 

請注意,它不是雙核我在那裏使用它的兩個單核只有 .... 使用這個我能夠實現我想要的。

Thanks All, Aashu ...