<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
	<title>jQuery Grid Plugin - jqGrid - Topic: How can I get the editOptions defined when calling navGrid</title>
	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid</link>
	<description><![CDATA[Grid plugin]]></description>
	<generator>Simple:Press Version 5.7.5.3</generator>
	<atom:link href="http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid/rss" rel="self" type="application/rss+xml" />
        <item>
        	<title>kuafusoft on How can I get the editOptions defined when calling navGrid</title>
        	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13549</link>
        	<category>Discussion</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13549</guid>
        	        	<description><![CDATA[<p>Tony,</p>
</p>
<p>I improved the function serialize2Str to get the function name from function handle. So I think the code can work now. but I don&#39;t think it&#39;s a good solution. I still suggest to modify the jqgrid code to improve the event handle(if&#160; the event is function name, then we should transfer to function handle).</p>
</p>
<p>Thank you very much.</p></p>
]]></description>
        	        	<pubDate>Mon, 04 Jan 2010 07:19:18 +0200</pubDate>
        </item>
        <item>
        	<title>kuafusoft on How can I get the editOptions defined when calling navGrid</title>
        	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13547</link>
        	<category>Discussion</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13547</guid>
        	        	<description><![CDATA[<p>I should explain the environment of my application. PHP + mySql + jQuery.</p>
<p>I want to use only one list.php to display all grid. the grid definition will be defined in other .php files. The list.php get the grid name from $_REQUEST then gets the grid definition with ajax and display it. Different grid has different options. So I have to pass some parameters to the grid definition. For example, for users management, when edit a user, we should disable the account, but when add a new user, we must enable the account. This action is done in beforeShowForm. But for other grid, there&#39;s no such problem. So I have to set the editOptions and some other options as parameters to pass to the list.php.</p>
]]></description>
        	        	<pubDate>Mon, 04 Jan 2010 05:25:38 +0200</pubDate>
        </item>
        <item>
        	<title>kuafusoft on How can I get the editOptions defined when calling navGrid</title>
        	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13546</link>
        	<category>Discussion</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13546</guid>
        	        	<description><![CDATA[<p>Tony,</p>
</p>
<p>Thank you very much.</p>
</p>
<p>I want to add a link to a field to edit the row. I used the following code:</p>
<p>var disableAccount = function(formid){<br />&#160;&#160;&#160; $("#users0_0account").attr(&#39;disabled&#39;, true);<br />};</p>
<p>var enableAccount = function(formid){<br />&#160;&#160;&#160; $("#users0_0account").attr(&#39;disabled&#39;, false);<br />};</p>
<p>var users_editOptions = {<br />&#160;&#160;&#160; beforeShowForm:disableAccount,<br />};</p>
<p>var users_addOptions = {<br />&#160;&#160;&#160; beforeShowForm:enableAccount,<br />};</p>
<p>var users_gridComplete = function(){<br />&#160;&#160;&#160; var gridId = &#39;#list&#39;;<br />&#160;&#160;&#160; grid_addEditLink(gridId, &#39;users0_0account&#39;, users_editOptions);<br />};</p>
<p>var initUsersColumns = function (jsonData){<br />&#160;&#160;&#160; jsonData.editOptions = users_editOptions;<br />&#160;&#160;&#160; jsonData.addOptions = users_addOptions;<br />&#160;&#160;&#160; jsonData.gridComplete = users_gridComplete;<br />&#160;&#160;&#160; return jsonData;<br />};</p>
</p>
<p>anyway, the initUserColumns will be called to set the colModels.</p>
</p>
<p>in a common.js, I define the relative functions:</p>
<p>var grid_getOptions = function(action, prop){<br />&#160;&#160;&#160; var defaultNavOptions = {view:true};<br />&#160;&#160;&#160; var defaultEditOptions = {top:100, left:500, closeOnEscape:true, bottominfo:"Fields marked with (*) are required",};<br />&#160;&#160;&#160; var defaultAddOptions = {top:100, left:500, closeOnEscape:true, bottominfo:"Fields marked with (*) are required",};<br />&#160;&#160;&#160; var defaultDelOptions = {};<br />&#160;&#160;&#160; var defaultSearchOptions = {<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; multipleSearch:true,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; gridModel:false, <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; gridNames:true, <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; formtype:"vertical", <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; enableSearch: true, <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; enableClear: true, <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; autosearch: false,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; filterModel:[],<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; };<br />&#160;&#160;&#160; var defaultViewOptions = {top:100, left:500, closeOnEscape:true,};<br />&#160;&#160;&#160; var options = {};<br />&#160;&#160;&#160; switch(action){<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;edit&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultEditOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;add&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultAddOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;nav&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultNavOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;search&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultSearchOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;view&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultViewOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case &#39;del&#39;:<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; options = $.extend(defaultDelOptions, prop &#124;&#124; {});<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160; }<br />&#160;&#160;&#160; return options;<br />};</p>
<p>var grid_edit = function(gridId, rowId, prop){<br />&#160;&#160;&#160; $(gridId).jqGrid(&#39;editGridRow&#39;, rowId, prop);<br />};</p>
<p>var grid_addEditLink = function(gridId, col, prop){<br />&#160;&#160;&#160; prop = grid_getOptions(&#39;edit&#39;, prop);<br />&#160;&#160;&#160; gridId = gridId &#124;&#124; &#39;#list&#39;;<br />&#160;&#160;&#160; var ids = jQuery(gridId).jqGrid(&#39;getDataIDs&#39;); <br />&#160;&#160;&#160; for(var i=0;i &#60; ids.length;i++){<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; var cell = jQuery(gridId).getCell(ids[i], col);<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; var link = "javascript:grid_edit(&#39;" + gridId + "&#39;," + ids[i] + "," + Object.serialize2Str(prop) + ")";// jQuery(&#39;" + gridId + "&#39;).editGridRow(&#39;"+ids[i]+"&#39;)";<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; var addLink = "&#60;a href=\\"" + link + "\\"&#62;" + cell + "&#60;/a&#62;";<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; jQuery(gridId).setCell(ids[i], col, addLink); <br />&#160;&#160;&#160; } <br />};</p>
<p>But I can not serialize the function handles in editOptions(always be null, maybe I should improve the serialize2Str function which is get by google:)), so I changed the beforeShowForm to &#39;disableAccount&#39;/&#39;enableAccount&#39; (just a string, the function name). Of couse it can not work well.</p>
<p>Can the jqGrid change the function name to function handle? I think it&#39;s not difficult to get the parameter type of the beforeShowForm (and other event parameters), can you give me any suggestion?</p>
</p>
<p>Thank you very much. and please forgive my poor english.</p></p>
]]></description>
        	        	<pubDate>Mon, 04 Jan 2010 05:18:03 +0200</pubDate>
        </item>
        <item>
        	<title>tony on How can I get the editOptions defined when calling navGrid</title>
        	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13511</link>
        	<category>Discussion</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13511</guid>
        	        	<description><![CDATA[<p>Hello,</p>
<p>Define the editoptions like this</p>
<p>var editoptions = { ... here all edit options};</p>
<p>then you can easy call</p>
<p>$("#mygrid").navGrid(&#39;pager&#39;,{...},{}, editoptions,...);</p>
<p>and</p>
<p>$("#mygrid").editGridRow(rowid, editoptions);</p>
</p>
<p>Regards</p>
<p>Tony</p>
]]></description>
        	        	<pubDate>Sun, 03 Jan 2010 13:50:51 +0200</pubDate>
        </item>
        <item>
        	<title>kuafusoft on How can I get the editOptions defined when calling navGrid</title>
        	<link>http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13482</link>
        	<category>Discussion</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/discussion/how-can-i-get-the-editoptions-defined-when-calling-navgrid#p13482</guid>
        	        	<description><![CDATA[<p>Firstly thanks for your great work. The jqGrid is really wonderful.</p>
</p>
<p>A question:</p>
<p>I want to edit a row (call editGridRow) via two ways:</p>
<p>1. navGrid.edit. Here I defined the editoptions when navGrid is called.</p>
<p>2. add a link to a column. Here I used the gridComplete to add a link to a column, such as &#39;name&#39; column. when I click the &#39;name&#39;, a edit form will popup. but I can not use the defined editoptions. How can I get it?</p>
</p>
<p>Thanks.</p>
]]></description>
        	        	<pubDate>Thu, 31 Dec 2009 05:30:13 +0200</pubDate>
        </item>
</channel>
</rss>