
var arg = args.get_argument();
if (arg)
{
var RatePerc = arg.RatePerc;
var seldate = arg.Reason;
var masterTableView;
var length;
var grid = $find("<%
= grvCoverelements.ClientID %>");
if (grid)
{
masterTableView = grid.get_masterTableView();
}
if (masterTableView)
{
var firstDataItems = masterTableView.get_dataItems();
if (firstDataItems)
{
length = firstDataItems.length;
// alert("length = " + length);
}
for (var i = 0; i < length; i++)
{
alert(i ); //Successful
var dataItem = firstDataItems[i].get_element("ORateCBX");
if (dataItem)
{
//unsuccessful condition everytime...i.e. not getting the GridTemplateColumn UniqueName ="ORateCBX"
alert("dataItem is " + dataItem);
// 1. Is it the correct row (the one the user clicked on to insert (via popup) the new values from args.
if (checkBox && checkBox.checked )
{
// 1. Get the rate textbox
var txtRate = dataItem.findElement("txtORate");
//2. Is it the correct row and checkbox
if ( txtRate.value =" " )
{
//3. Insert the new value from Arg.RatePerc
txtRate.value = Arg.RatePerc;
//4 Insert the new value from Arg.Reason
var txtReason = dataItem.findElement("txtReason");
txtReason.value = Arg.Reason;
}
}
}
}
__doPostBack(
"NewOrate", arg);
}
In other words it never finds the Column (GridTemplate col with the unique name of "ORateCBX" ???
// for (var i=0; i < masterTableView.Rows.length; i++)
// {
// alert("looping" ); //...............//NOT successful
// var cell = masterTableView.GetCellByColumnUniqueName(masterTableView.Rows[i] , "ORateCBX");
// if (cell) {alert("Cell")};
// var dataItem = dataitems[i].findElement("txtORate")[0];
// if (checkBox && checkBox.checked)
// {
// Find the textboxes "txtRate and TxtReason and populate them from args
/// }
// }

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" ShowGroupPanel="false" ShowStatusBar="false" EnableViewState="false" GridLines="Both" ShowFooter="false" EnableEmbeddedSkins="false" SkinID="radgridSkin" OnItemDataBound="RadGrid1_OnDataBound" OnPreRender="RadGrid1_PreRender"> <MasterTableView EnableColumnsViewState="false" Width="100%" TableLayout="Auto" > <Columns> <telerik:GridBoundColumn DataField="TaxonName" HeaderText="Taxon" ItemStyle-Wrap="false" HeaderStyle-BorderWidth="0px" > </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="StrainNumber" HeaderText="Strain #" ItemStyle-Wrap="false" HeaderStyle-BorderWidth="0px"> </telerik:GridBoundColumn> </Columns> </MasterTableView><HeaderStyle Wrap="true" BorderStyle="Solid" BorderWidth="1px" BorderColor="SlateGray" /><ClientSettings> <Selecting AllowRowSelect="true" /> <Scrolling AllowScroll="True" ScrollHeight="500px" FrozenColumnsCount="2" UseStaticHeaders="true" /></ClientSettings></telerik:RadGrid><telerik:RadGrid runat="server" ShowGroupPanel="false" ShowStatusBar="false" SkinId="radgridSkin" ItemStyle-BackColor="GhostWhite" AlternatingItemStyle-BackColor="LightGray" HeaderStyle-BackColor="Transparent" HeaderStyle-Font-Bold="true" AlternatingItemStyle-CssClass="dgRow" ItemStyle-Height="28px" AlternatingItemStyle-Height="28px" ItemStyle-CssClass="dgRow" ItemStyle-BorderColor="LightSlateGray" ItemStyle-BorderStyle="Solid" ItemStyle-BorderWidth="1px" AlternatingItemStyle-BorderColor="LightSlateGray" AlternatingItemStyle-BorderStyle="Solid" AlternatingItemStyle-BorderWidth="1px"></telerik:RadGrid>.dgRow{}.dgRow td{ height: 31px; padding: 0px 0px 0px 2px; border: solid 1px LightSlateGray;}TABLE.dgRow th{ padding-left:4px; padding-right:4px; padding-bottom:4px; max-height:60px; vertical-align:bottom; white-space:nowrap; text-align:left;}
SetRestrictedExtent(). I want this function to be called just once on page load not on postback.OrderTypeRankingGrid.AddNeedDataSourceEventHandler(NeedDataSource); // Binding master table view OrderTypeRankingGrid.AddGridCommandEventHandler(DataGrid_ItemCommand); // Events for the standard ngm controls OrderTypeRankingGrid.PreRender += new EventHandler(OrderTypeRankingGrid_PreRender); OrderTypeRankingGrid.AllowColumnsReorder = false; OrderTypeRankingGrid.GridHeaderText = "Order Type Ranking"; var masterView = OrderTypeRankingGrid.ConfigureMasterTableView("vDivisionOrderTypeRanking", new string[] { "DivisionOrderTypeRankId","CategoryCode", "PurposeCode", "ReasonCode", "ReasonDescription"}); masterView.AllowFilteringByColumn = true; masterView.AllowSorting = true; masterView.FullEditMode = true; masterView.EditMode = GridEditMode.InPlace; masterView.EnableShowHideColumns = true; masterView.SetPaging(GridPagerMode.NextPrevAndNumeric); masterView.GridTableView.ShowHeader = true; masterView.ShowHeader = true; masterView.ShowFooter = true; masterView.ShowHeadersWhenNoRecords = true; masterView.AllowPaging = true; masterView.PageSize = 10; masterView.AddNgmCommandButton(NgmButtonType.Save, "btnSave", null, null, null, Unit.Pixel(50)); masterView.AddNgmCommandButton(NgmButtonType.Cancel, null, null, null, null, Unit.Pixel(50)); masterView.CommandItemDisplay = GridCommandItemDisplay.Bottom; if (!IsPostBack) //must check for postback; otherwise, columns will be duplicated { //masterView.AddBoundColumn("DivisionOrderTypeRankId", "Rank ID", "DivisionOrderTypeRankId", true, false, true, Unit.Percentage(7.0)); masterView.AddBoundColumn("CategoryCode", "Category Code", "CategoryCode", true, false, true, Unit.Percentage(7.0)); masterView.AddBoundColumn("PurposeCode", "Purpose Code", "PurposeCode", true, false, true, Unit.Percentage(7.0)); masterView.AddBoundColumn("ReasonCode", "Reason Code", "ReasonCode", true, false, true, Unit.Percentage(7.0)); masterView.AddBoundColumn("ReasonDescription", "Reason Description", "ReasonDescription", true, false, true, Unit.Percentage(7.0)); masterView.AddBoundColumn("OrderTypeRank", "Rank", "OrderTypeRank", false, false, true, Unit.Percentage(7.0)); }<telerik:RadScriptManager ID="RadScriptManager2" runat="server"> </telerik:RadScriptManager> //Customized Radgrid Datagrid usercontrol <tr> <uc1:DataGrid ID="OrderTypeRankingGrid" runat="server" /> </tr> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="radGrid"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radGrid" /> <telerik:AjaxUpdatedControl ControlID="lblBindTime" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="btnExport"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radGrid" /> <telerik:AjaxUpdatedControl ControlID="btnExport" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="btnExportMultilevelGrid"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radGrid" /> <telerik:AjaxUpdatedControl ControlID="btnExportMultilevelGrid" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> <ClientEvents OnRequestStart="RequestStarted" OnResponseEnd="ResponseEnd" /> </telerik:RadAjaxManager>