Sep 13, 2016, 1:14 PM
[OPEN] [#1381] [4.1.0] DateMenu issue
Choosing a new date from the DateMenu, throws a JS exception:
Unable to get property 'setValue' of undefined or null reference
Working sample. Original code works fine in Ext.Net 2.5
Unable to get property 'setValue' of undefined or null reference
Working sample. Original code works fine in Ext.Net 2.5
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script runat="server">
public class SomeModel
{
public DateTime SelectedDate
{
get;
set;
}
public DateTime InitialLoadDate
{
get;
set;
}
}
const string SOME_DATA = "SomeData";
public SomeModel Model
{
get
{
return Session[ SOME_DATA ] as SomeModel;
}
}
protected void Page_Init( object sender, EventArgs e )
{
SomeModel aModel = null;
if ( !IsPostBack )
{
aModel = Model;
if ( aModel == null )
{
aModel = new SomeModel();
aModel.SelectedDate = aModel.InitialLoadDate = DateTime.Today;
Session[ SOME_DATA ] = aModel;
}
}
else if ( X.IsAjaxRequest )
{
aModel = Session[ SOME_DATA ] as SomeModel;
}
}
protected void Page_Load( object sender, EventArgs e )
{
SomeModel aModel = Session[ SOME_DATA ] as SomeModel;
if ( IsPostBack && aModel.InitialLoadDate != DateTime.Today )
{
SetDate( DateTime.Today );
aModel.InitialLoadDate = DateTime.Today;
}
}
[DirectMethod( Namespace = "Dashboard" )]
public void SetDate( DateTime aDate )
{
Model.SelectedDate = aDate.Date;
btnDate.DataBind();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<ext:ResourceManager runat="server" ID="testRM" />
<ext:Panel runat="server" Layout="FitLayout" ID="DashboardContainer">
<TopBar>
<ext:Toolbar runat="server" ID="toolbarDashboard">
<LayoutConfig>
<ext:HBoxLayoutConfig Pack="Center" Align="Middle"></ext:HBoxLayoutConfig>
</LayoutConfig>
<Items>
<ext:Button runat="server" Icon="Calendar" Text='<%# Model.SelectedDate.ToShortDateString() %>' ID="btnDate" AutoDataBind="true">
<Menu>
<ext:DateMenu runat="server" ID="DateSelector">
<Picker ID="DatePicker" runat="server" SelectedDate='<%# Model.SelectedDate %>' AutoDataBind="true">
</Picker>
<Listeners>
<Select Handler="Dashboard.SetDate(date)" Scope="Dashboard">
</Select>
</Listeners>
</ext:DateMenu>
</Menu>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
</ext:Panel>
</form>
</body>
</html>