or
Code below allow me to loops through all rad controls on the page. it is working except when I have 2 raddatepicker. it doesn't know which dateinput textbox to hight light even though it gets the right id of the current selected one. please help. thanks
function Validation() {
var allRadComboBoxes = [];
var allRadControls = $telerik.radControls;
for (var i = 0; i <
allRadControls.length
; i++)
{
var
element
=
allRadControls
[i];
if (Telerik.Web.UI.RadComboBox && element instanceof Telerik.Web.UI.RadComboBox) {
Array.add(allRadComboBoxes, element);
}
}
for (var
i
=
0
; i < allRadComboBoxes.length; i++)
{
var
CurrentControlID
=
allRadComboBoxes
[i].get_id();
var
TextControlID
=
CurrentControlID
.replace("ddl", "txt");
var TextControl = $find(TextControlID);
switch (allRadComboBoxes[i].get_text().toLowerCase())
{
case "figure":
if (allRadComboBoxes[i].get_text().toLowerCase() == "actual date")
{
TextControlID
=
CurrentControlID
.replace("ddl", "dp");
TextControl = $find(TextControlID);
alert(TextControlID);
}
if (document.getElementById(TextControlID).value == "")
{
if (TextControlID.indexOf("txt") >= 0)
{
TextControl.get_styles().EnabledStyle[0] += "background-color: red;";
TextControl.updateCssClass();
return false;
}
else
{
alert($find("<%=dp_DateArtworkAcquired%>"));
TextControl.get_dateInput()._textBoxElement.style.backgroundColor = "red";
return false;
}
}
}
}
return false;
}
protected void Page_Init(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
AddPageView(tabstripPersoneel.FindTabByText("Personeelsfiche"));
}
}
protected void Sidebar_TabClick(object sender, RadTabStripEventArgs e)
{
AddPageView(e.Tab);
e.Tab.PageView.Selected = true; //NullReferenceException happens Here
}
private void AddPageView(RadTab tab)
{
RadPageView pageView = new RadPageView();
pageView.ID = tab.Text;
ContentMultiPage.PageViews.Add(pageView);
tab.PageViewID = pageView.ID;
}
protected void ContentMultiPage_OnPageViewCreated(object sender, RadMultiPageEventArgs e)
{
string userControlName ="/Controls/"+ e.PageView.ID + "Weergave.ascx";
Control userControl = Page.LoadControl(userControlName);
userControl.ID = e.PageView.ID + "_userControl";
e.PageView.Controls.Add(userControl);
}
<
telerik:RadMultiPage
runat
=
"server"
ID
=
"SideMultiPage"
SelectedIndex
=
"0"
>
<
telerik:RadPageView
runat
=
"server"
ID
=
"PageviewPersoneelsleden"
>
<
telerik:RadTabStrip
ID
=
"tabstripPersoneel"
runat
=
"server"
Orientation
=
"VerticalLeft"
OnClientTabSelecting
=
"onTabSelecting"
OnTabClick
=
"Sidebar_TabClick"
>
<
Tabs
>
<
telerik:RadTab
Text
=
"Personeelsfiche"
runat
=
"server"
Selected
=
"True"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Arbeidsovereenkomst"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Asset"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Certificaten"
PageViewID
=
"Certificaat"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Ervaringen"
PageViewID
=
"Ervaring"
runat
=
"server"
>
</
telerik:RadTab
>
</
Tabs
>
</
telerik:RadTabStrip
>
</
telerik:RadPageView
>
<
telerik:RadPageView
ID
=
"PageviewAfwezigheden"
runat
=
"server"
>
<
telerik:RadTabStrip
ID
=
"tabstripAfwezigheden"
runat
=
"server"
Orientation
=
"VerticalLeft"
OnTabClick
=
"Sidebar_TabClick"
>
<
Tabs
>
<
telerik:RadTab
Text
=
"Afwezigheid inplannen"
PageViewID
=
"Afwezigheid"
runat
=
"server"
Selected
=
"True"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Maandoverzicht afwezigheden"
PageViewID
=
"Maandoverzicht"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Jaaroverzicht afwezigheden"
PageViewID
=
"Jaaroverzicht"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Kalenderoverzicht"
PageViewID
=
"Kalender"
runat
=
"server"
>
</
telerik:RadTab
>
</
Tabs
>
</
telerik:RadTabStrip
>
</
telerik:RadPageView
>
<
telerik:RadPageView
ID
=
"PageviewWagens"
runat
=
"server"
>
<
telerik:RadTabStrip
ID
=
"TabstripWagens"
runat
=
"server"
Orientation
=
"VerticalLeft"
OnTabClick
=
"Sidebar_TabClick"
>
<
Tabs
>
<
telerik:RadTab
Text
=
"Wagens"
PageViewID
=
"Wagen"
runat
=
"server"
Selected
=
"True"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Tankkaarten"
PageViewID
=
"Tankkaart"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Technische onderhouden"
PageViewID
=
"Onderhoud"
runat
=
"server"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Expertiseverslagen"
PageViewID
=
"Expertiseverslag"
runat
=
"server"
>
</
telerik:RadTab
>
</
Tabs
>
</
telerik:RadTabStrip
>
</
telerik:RadPageView
>
</
telerik:RadMultiPage
>
<
telerik:RadGrid
ID
=
"grid1"
runat
=
"server"
AllowPaging
=
"True"
CssClass
=
"rgHeaderDiv"
AllowMultiRowSelection
=
"True"
AutoGenerateColumns
=
"False"
onneeddatasource
=
"grid1_NeedDataSource"
ShowFooter
=
"true"
GridLines
=
"None"
ShowGroupPanel
=
"True"
>
<
ClientSettings
AllowDragToGroup
=
"True"
>
<
Scrolling
AllowScroll
=
"true"
UseStaticHeaders
=
"true"
SaveScrollPosition
=
"true"
/>
</
ClientSettings
>
<
MasterTableView
AutoGenerateColumns
=
"false"
> <
FilterItemStyle
HorizontalAlign
=
"Left"
/>
<
FilterItemStyle
HorizontalAlign
=
"Left"
/>
<
Columns
>
<
telerik:GridTemplateColumn
UniqueName
=
"CheckBoxTemplateColumn"
HeaderStyle-Width
=
"5%"
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"chk_ItemProperty"
runat
=
"server"
OnCheckedChanged
=
"chk_ItemProperty_CheckedChanged"
AutoPostBack
=
"True"
/>
</
ItemTemplate
>
<
HeaderTemplate
>
<
asp:CheckBox
ID
=
"chk_HeaderProperty"
runat
=
"server"
OnCheckedChanged
=
"chk_HeaderProperty_CheckedChanged"
AutoPostBack
=
"True"
/>
</
HeaderTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
Display
=
"false"
DataField
=
"col"
DataType
=
"System.Int32"
HeaderText
=
"col"
FilterControlAltText
=
"Filter column column"
UniqueName
=
"col"
/>
<
telerik:GridBoundColumn
DataField
=
"Col1"
DataType
=
"System.Decimal"
HeaderText
=
"Col1"
FilterControlAltText
=
"Filter column column"
UniqueName
=
"Col1"
HeaderStyle-Width
=
"15%"
ItemStyle-HorizontalAlign
=
"Left"
HeaderStyle-HorizontalAlign
=
"Left"
/>
<
telerik:GridBoundColumn
DataField
=
"Col2"
DataType
=
"System.String"
HeaderText
=
"Col2"
FilterControlAltText
=
"Filter column column"
UniqueName
=
"Col2"
HeaderStyle-Width
=
"15%"
ItemStyle-HorizontalAlign
=
"Left"
HeaderStyle-HorizontalAlign
=
"Left"
/>
<
telerik:GridBoundColumn
DataField
=
"Col3"
DataType
=
"System.Int32"
HeaderText
=
"Col3"
FilterControlAltText
=
"Filter column column"
UniqueName
=
"Col3"
HeaderStyle-Width
=
"15%"
ItemStyle-HorizontalAlign
=
"Left"
HeaderStyle-HorizontalAlign
=
"Left"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
protected
void
chk_ItemProperty_CheckedChanged(
object
sender, EventArgs e)
{
((sender
as
CheckBox).NamingContainer
as
GridItem).Selected = (sender
as
CheckBox).Checked;
bool
checkHeader =
true
;
foreach
(GridDataItem dataItem
in
grid1.MasterTableView.Items)
{
if
(!(dataItem.FindControl(
"chk_ItemProperty"
)
as
CheckBox).Checked)
{
checkHeader =
false
;
break
;
}
}
GridHeaderItem headerItem = gv_LeaseProperty1.MasterTableView.GetItems(GridItemType.Header)[0]
as
GridHeaderItem;
(headerItem.FindControl(
"chk_HeaderProperty"
)
as
CheckBox).Checked = checkHeader;
}
protected
void
chk_HeaderProperty_CheckedChanged(
object
sender, EventArgs e)
{
CheckBox headerCheckBox = (sender
as
CheckBox);
foreach
(GridDataItem dataItem
in
grid1.MasterTableView.Items)
{
(dataItem.FindControl(
"chk_ItemProperty"
)
as
CheckBox).Checked = headerCheckBox.Checked;
dataItem.Selected = headerCheckBox.Checked;
}
}