jQWidgets Forums
jQuery UI Widgets › Forums › Grid › closing numberinput editor in grid
Tagged: Cell, close, edit, editor, endcelledit, grid, jqxgrid, numberinput
This topic contains 1 reply, has 2 voices, and was last updated by Dimitar 11 years, 6 months ago.
-
Author
-
Hi
I was using .. selectionmode: ‘checkbox’,
Grid has columns : checkbox, name, price, quantity
Out of those, “checkbox” and “quantity” can be edited, rest are readonly cells.
My questions was : “numberinputeditor” can only be closing automatically when user clicks out of grid / on another quantity field or checkbox, click on any other remains fields doesn;t make editor gets closed,
hint : please don;t expect to hit enter everytime they open editor.
how do we close editor when user clicks out side of editor or any on any where with in grid ?
Thanks
Thanks
Hello mallepaddi,
Here is an example:
<!DOCTYPE html><html lang="en"><head> <link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" type="text/css" /> <script type="text/javascript" src="../../scripts/jquery-1.10.2.min.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxdata.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxbuttons.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxscrollbar.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxmenu.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxcheckbox.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxlistbox.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxdropdownlist.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.edit.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxgrid.selection.js"></script> <script type="text/javascript" src="../../jqwidgets/jqxnumberinput.js"></script> <script type="text/javascript" src="../../scripts/gettheme.js"></script> <script type="text/javascript" src="generatedata.js"></script> <script type="text/javascript"> $(document).ready(function () { var theme = ""; // prepare the data var data = generatedata(200, true); var source = { localdata: data, datafields: [ { name: 'firstname', type: 'string' }, { name: 'lastname', type: 'string' }, { name: 'productname', type: 'string' }, { name: 'available', type: 'bool' }, { name: 'quantity', type: 'number' }, { name: 'price', type: 'number' }, { name: 'total', type: 'number' } ], datatype: "array" }; var dataAdapter = new $.jqx.dataAdapter(source); // initialize jqxGrid $("#jqxgrid").jqxGrid( { width: 670, source: dataAdapter, editable: true, theme: theme, editmode: 'dblclick', columns: [ { text: 'First Name', editable: false, datafield: 'firstname', width: 100 }, { text: 'Last Name', editable: false, datafield: 'lastname', width: 100 }, { text: 'Product', editable: false, datafield: 'productname', width: 180 }, { text: 'Available', datafield: 'available', threestatecheckbox: true, columntype: 'checkbox', width: 70 }, { text: 'Quantity', editable: true, datafield: 'quantity', columntype: "numberinput", width: 80, cellsalign: 'right' }, { text: 'Unit Price', editable: false, datafield: 'price', width: 90, cellsalign: 'right', cellsformat: 'c2' }, { text: 'Total', editable: false, datafield: 'total', width: 100, cellsalign: 'right', cellsformat: 'c2' } ] }); var editedCell; $("#jqxgrid").on('cellbeginedit', function (event) { var column = args.datafield; var row = args.rowindex; if (column == "quantity") { editedCell = row; } else { editedCell = null; }; }); $("#jqxgrid").on("cellclick", function (event) { var datafield = event.args.datafield; var rowindex = event.args.rowindex; if (editedCell && (datafield == "available" || (datafield == "quantity" && rowindex != editedCell))) { $("#jqxgrid").jqxGrid('endcelledit', editedCell, "quantity", false); }; }); }); </script></head><body class='default'> <div id='jqxWidget' style="font-size: 13px; font-family: Verdana; float: left;"> <div id="jqxgrid"> </div> </div></body></html>
Best Regards,
DimitarjQWidgets team
http://www.jqwidgets.com/ -
AuthorPosts
You must be logged in to reply to this topic.