<?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: Adding Row Dynamically</title>
	<link>http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically</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/bugs/adding-row-dynamically/rss" rel="self" type="application/rss+xml" />
        <item>
        	<title>neolivz on Adding Row Dynamically</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13454</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13454</guid>
        	        	<description><![CDATA[<p>I fixed the problem by adding</p>
<p><input type='button' class='sfcodeselect' name='sfselectit2985' value='Select Code' data-codeid='sfcode2985' /></p>
<div class='sfcode' id='sfcode2985'>width:100%;</div>
<p>atribute.</p>
]]></description>
        	        	<pubDate>Wed, 30 Dec 2009 11:51:51 +0200</pubDate>
        </item>
        <item>
        	<title>neolivz on Adding Row Dynamically</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13443</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13443</guid>
        	        	<description><![CDATA[<p>Sorry, this was a mistake.</p>
<p><input type='button' class='sfcodeselect' name='sfselectit2971' value='Select Code' data-codeid='sfcode2971' /></p>
<div class='sfcode' id='sfcode2971'>padding-left:40%;</div>
<p>was making the problem</p>
]]></description>
        	        	<pubDate>Wed, 30 Dec 2009 09:13:45 +0200</pubDate>
        </item>
        <item>
        	<title>neolivz on Adding Row Dynamically</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13442</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/adding-row-dynamically#p13442</guid>
        	        	<description><![CDATA[<p>Hi,</p>
<p>&#160;&#160; I am dynamically adding rows to the grid using addData method. My requirement needs to add a checkbox in the row.</p>
<p><input type='button' class='sfcodeselect' name='sfselectit8656' value='Select Code' data-codeid='sfcode8656' /></p>
<div class='sfcode' id='sfcode8656'>function addRow() {<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; var checkBox = "&#60;div style=\\"alignl:center;padding-left:40%;\\"&#62;&#60;input type=\\"checkbox\\" name = \\"name[" + count + "].id\\" value=\\"true\\" /&#62;&#60;/div&#62;";<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; var value = "&#60;input type=\\"hidden\\" name = \\"name[" + count + "].value\\" value=\\"" + id + "\\"/&#62;"<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;e&#39;] = checkBox + value;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;a&#39;]=&#39;a&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;b&#39;]=&#39;b&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;c&#39;]=&#39;c&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;d&#39;]=&#39;d&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; selectedNodes.push(id);<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; jQuery("#myTable").addRowData(count, ret);<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; count++;</p>
<p>&#160;&#160;&#160; }</p>
</div>
<p>I call this method multiple times. It works fine in firefox. But in IE it adds checkbox only in first row.</p>
</p>
<p>I have checked the source code of grid.base.js</p>
<p><input type='button' class='sfcodeselect' name='sfselectit9062' value='Select Code' data-codeid='sfcode9062' /></p>
<div class='sfcode' id='sfcode9062'>addRowData : function(rowid,data,pos,src) {</div>
<p>method there is a part</p>
<p><input type='button' class='sfcodeselect' name='sfselectit1975' value='Select Code' data-codeid='sfcode1975' /></p>
<div class='sfcode' id='sfcode1975'>if(t.rows.length === 0){<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; $("table:first",t.grid.bDiv).append(row);<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; } else {<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; switch (pos) {<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; case &#39;last&#39;:<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; $(t.rows[t.rows.length-1]).after(row);<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; break;<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; case &#39;first&#39;:<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; $(t.rows[0]).before(row);<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; break;<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; case &#39;after&#39;:<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; sind = t.rows.namedItem(src);<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; sind != null ? $(t.rows[sind.rowIndex+1]).hasClass("ui-subgrid") ? $(t.rows[sind.rowIndex+1]).after(row) : $(sind).after(row) : "";<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; break;<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; case &#39;before&#39;:<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; sind = t.rows.namedItem(src);<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; if(sind != null) {$(sind).before(row); sind=sind.rowIndex;};<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; break;<br />&#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; }</div>
</p>
<p>the</p>
<p><input type='button' class='sfcodeselect' name='sfselectit7195' value='Select Code' data-codeid='sfcode7195' /></p>
<div class='sfcode' id='sfcode7195'>$("table:first",t.grid.bDiv).append(row);</div>
<p>works fine but</p>
</p>
<p><input type='button' class='sfcodeselect' name='sfselectit3737' value='Select Code' data-codeid='sfcode3737' /></p>
<div class='sfcode' id='sfcode3737'>$(t.rows[t.rows.length-1]).after(row);</div>
<p>does not work fine in IE.</p>
<p>I do not know its know its a bug or not, but it behaves diffrent in diffrent browser.</p>
<p>Here is the complete source code.</p>
<p><input type='button' class='sfcodeselect' name='sfselectit5365' value='Select Code' data-codeid='sfcode5365' /></p>
<div class='sfcode' id='sfcode5365'>&#60;html&#62;<br />&#160;&#160;&#160; &#60;head&#62; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#60;title&#62;Dojo Test Page&#60;/title&#62;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen" href="css/theme/official/common.css"/&#62;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen"<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; href="scripts/vendor/jquery-ui/css/cupertino/jquery-ui-1.7.2.custom.css"/&#62;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen" href="scripts/vendor/jquery-ui/jqGrid/css/ui.jqgrid.css"/&#62;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen" href="scripts/vendor/jqGrid/css/jquery-ui-1.7.2.custom.css" /&#62;<br />&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen" href="scripts/vendor/jqGrid/css/ui.jqgrid.css" /&#62;<br />&#160;&#160;&#160; &#60;link rel="stylesheet" type="text/css" media="screen" href="scripts/vendor/jqGrid/css/jquery.searchFilter.css" /&#62;<br />&#60;script src="scripts/vendor/jquery-ui/development-bundle/jquery-1.3.2.js" type="text/javascript"&#62;&#60;/script&#62;<br />&#60;script src="scripts/vendor/jquery-ui/development-bundle/ui/jquery-ui-1.7.2.custom.js" type="text/javascript"&#62;&#60;/script&#62;<br />&#60;script src="scripts/vendor/jquery-ui/jqGrid/js/i18n/grid.locale-en.js" type="text/javascript"&#62;&#60;/script&#62;<br />&#60;script src="scripts/vendor/jquery-ui/jqGrid/src/grid.base.js" type="text/javascript"&#62;&#60;/script&#62;<br />&#60;script src="scripts/vendor/jquery-ui/jqGrid/src/grid.custom.js" type="text/javascript"&#62;&#60;/script&#62;<br />&#60;script type="text/javascript"&#62;<br />&#160;&#160;&#160; var count = 0;<br />&#160;&#160;&#160; var selectedNodes = new Array();<br />&#160;&#160;&#160; var ret = {};<br />&#160;&#160;&#160; var id=0;<br />&#160;&#160;&#160; jQuery(document).ready(function() {<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; jQuery("#myTable").jqGrid({<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; datatype: &#39;local&#39;,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; mtype: &#39;GET&#39;,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; colNames:[&#39;A&#39;,&#39;B&#39;,&#39;C&#39;,&#39;D&#39;,&#39;E&#39;],<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; colModel:[<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {name:&#39;a&#39;,label:&#39;A&#39;, editable: false,search:true},<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {name:&#39;b&#39;,label:&#39;B&#39;, editable: false,search:true},<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {name:&#39;c&#39;,label:&#39;C&#39;,&#160; align:"center", editable: false,search:true},<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {name:&#39;d&#39;,label:&#39;D&#39;,&#160; editable: false,search:true},<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {name:&#39;e&#39;,label:&#39;E&#39;,&#160; editable: true,search:true},<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ],<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; height:&#39;191px&#39;,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; imgpath: &#39;css/smoothness/images&#39;,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; sortname: &#39;a&#39;,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; sortorder: &#39;desc&#39;,<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; autosearch:true,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; viewrecords: true,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; autowidth:true,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; scroll:false,<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; caption: &#39;Test Page&#39;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; });<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; addRow();<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; addRow();<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; addRow();<br />&#160;&#160;&#160; });</p>
<p>&#160;&#160; </p>
<p>&#160;&#160;&#160; function addRow() {<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; var checkBox = "&#60;div style=\\"alignl:center;padding-left:40%;\\"&#62;&#60;input type=\\"checkbox\\" name = \\"name[" + count + "].id\\" value=\\"true\\" /&#62;&#60;/div&#62;";<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; var value = "&#60;input type=\\"hidden\\" name = \\"name[" + count + "].value\\" value=\\"" + id + "\\"/&#62;"<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;e&#39;] = checkBox + value;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;a&#39;]=&#39;a&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;b&#39;]=&#39;b&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;c&#39;]=&#39;c&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; ret[&#39;d&#39;]=&#39;d&#39;;<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; selectedNodes.push(id);<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; jQuery("#myTable").addRowData(count, ret);<br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; count++;</p>
<p>&#160;&#160;&#160; }<br />&#60;/script&#62;</p>
<p>&#160;&#160;&#160; &#60;link rel="stylesheet" href="css/blueprint/grid.css" type="text/css" /&#62;<br />&#160;&#160;&#160; &#60;link rel="stylesheet" href="css/Simpl.css" type="text/css" /&#62;<br />&#160;&#160;&#160; &#60;link rel="stylesheet" href="css/twmsWidget/Search.css" type="text/css" /&#62;</p>
<p>&#160;&#160;&#160; &#60;/head&#62;<br />&#60;body&#62;<br />&#60;div style="padding-top:5px;"&#62;<br />&#160;&#160;&#160; &#60;table id="myTable" style="width:96%" class="scroll"&#62;&#60;/table&#62;<br />&#60;/div&#62;<br />&#60;/body&#62;</p>
<p>&#160;&#60;/html&#62;</p>
</div>
<p>I was able to work around using custom formatter</p>
</p>
<p><input type='button' class='sfcodeselect' name='sfselectit837' value='Select Code' data-codeid='sfcode837' /></p>
<div class='sfcode' id='sfcode837'>function checkboxFormatter(el, cval, opts) {<br />&#160;&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; return &#39;&#60;input type="checkbox" /&#62;&#39;;<br />&#160;&#160;&#160;&#160;&#160; }</div>
</p>
<p>It works fine in both ie and firefox 🙂</p>
<p>Regards,</p>
<p>Jishnu</p>
]]></description>
        	        	<pubDate>Wed, 30 Dec 2009 07:56:47 +0200</pubDate>
        </item>
</channel>
</rss>