By default, the number of decimal places will be restricted to two in the NumericTextBox while editing the numeric column. We can restrict to type the decimal points in a NumericTextBox by using the validateDecimalOnType and decimals properties of NumericTextBox.
In the below demo, while editing the row we have restricted to type the decimal point value in the NumericTextBox of Price column.
import { TreeGrid, Edit, Toolbar } from "@syncfusion/ej2-treegrid";
import { stackedData } from './datasource.ts';
TreeGrid.Inject(Edit, Toolbar);
let treegrid: TreeGrid = new TreeGrid({
dataSource: stackedData,
childMapping: "subtasks",
treeColumnIndex: 1,
height: 265,
editSettings: { allowEditing: true, allowAdding: true, allowDeleting: true },
toolbar: ["Add", "Delete", "Update", "Cancel"],
columns: [
{ field: "orderID", headerText: "Order ID", textAlign: "Right", isPrimaryKey: true, width: 70 },
{ field: "orderName", headerText: "Order Name", width: 100 },
{ field: "orderDate", headerText: "Order Date", textAlign: "Right", width: 100, editType: "datepickeredit",
format: { skeleton: "yMd", type: "date" } },
{ field: "shippedDate", headerText: "Shipped Date", textAlign: "Right", width: 100,
editType: "datepickeredit", format: { skeleton: "yMd", type: "date" } },
{ field: "shipMentCategory", headerText: "Shipment Category", textAlign: "Right", width: 100 },
{ field: "units", headerText: "Units", width: 90, editType: "numericedit" },
{ field: "price", headerText: "Price", width: 90, editType: "numericedit",
edit: {
params: {
validateDecimalOnType: true,
decimals: 0,
format: "N"
}
}
}
]
});
treegrid.appendTo("#TreeGrid");
#container {
visibility: hidden;
}
#loader {
color: #008cff;
font-family: 'Helvetica Neue','calibiri';
font-size: 14px;
height: 40px;
left: 45%;
position: absolute;
top: 45%;
width: 30%;
}
<!DOCTYPE html>
<html lang="en">
<head>
<title>EJ2 Grid</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Typescript Grid Control" />
<meta name="author" content="Syncfusion" />
<link href="index.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-base/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-grids/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-treegrid/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-buttons/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-popups/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-navigations/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-dropdowns/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-lists/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-inputs/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-calendars/styles/material.css" rel="stylesheet" />
<link href="//cdn.syncfusion.com/ej2/21.2.3/ej2-splitbuttons/styles/material.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
</head>
<body>
<div id='loader'>Loading....</div>
<div id='container'>
<div id='TreeGrid'></div>
</div>
</body>
</html>
You can refer to our
JavaScript Tree Grid
feature tour page for its groundbreaking feature representations. You can also explore our JavaScript Tree Grid exampleJavaScript Tree Grid example
to knows how to present and manipulate data.