我有一个应用程序在我开始工作之前已经开发并且datepickers是自定义的。我们最近迁移到Windows 8和自定义日期选择器不再工作。所以我开始改变它们为jquery-ui datepicker,一切都像我期待的那样。但是现在我面临一个问题。这些自定义日期选择器中的一些处于Telerik RadGrid的编辑/插入模式。当文本框使用控件的id接收一些java脚本的焦点时,弹出jquery-ui datepicker。我没有问题,使新控件以编辑/插入模式出现在其中的正确值。我的问题是,我无法找到控件的RadGrid的编辑/插入模式的ID以在控件获得焦点时弹出日期选择器。任何帮助将不胜感激。如何:在Telerik RadGrid的插入/编辑模式下查找控件ID
0
A
回答
0
请试试下面的代码片段。
ASPX
<head runat="server">
<title></title>
<telerik:RadStyleSheetManager ID="RadStyleSheetManager1" runat="server" />
</head>
<body>
<form id="form1" runat="server">
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
</telerik:RadScriptManager>
<script type="text/javascript">
function TextBoxFocus(obj) {
alert(obj.id);
//Access client ID here
}
function RadTextBoxFocus(sender, args) {
alert(sender.get_id());
//Access client ID here
}
</script>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
</telerik:RadAjaxManager>
<div>
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" OnNeedDataSource="RadGrid1_NeedDataSource" OnItemDataBound="RadGrid1_ItemDataBound">
<MasterTableView>
<Columns>
<telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID"></telerik:GridBoundColumn>
<telerik:GridTemplateColumn UniqueName="Name" DataField="Name">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadTextBox ID="TextBox1" runat="server" Text='<%# Eval("Name") %>'>
<ClientEvents OnFocus="RadTextBoxFocus" />
</telerik:RadTextBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</div>
</form>
</body>
</html>
ASPX.CS
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("ID", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Rows.Add(1, "Name1");
dt.Rows.Add(2, "Name2");
dt.Rows.Add(3, "Name3");
RadGrid1.DataSource = dt;
}
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem item = e.Item as GridEditableItem;
TextBox TextBox1 = item["ID"].Controls[0] as TextBox;
TextBox1.Attributes.Add("onfocus", "TextBoxFocus(this);");
}
}
让我知道如果任何问题。
0
我设法访问控件,我不知道我是否做了非常糟糕的事情,因为它非常简单。
ASPX
<asp:TextBox ID="BoxILookFor" runat="server" Text='<%# Eval("myValue") %>' />
ASPX.CS
protected void myGrid_ItemDataBound(object sender, GridItemEventArgs e)
{
if ((e.Item is GridEditableItem) && (e.Item.IsInEditMode))
{
GridEditableItem myItem = (GridEditableItem)e.Item;
TextBox myBox = (TextBox)myItem.FindControl("BoxILookFor");
string myID = myBox.ClientID.ToString();
myGrid.Controls.Add(new LiteralControl("<script type='text/javascript'>$('#" + myID + "').datepicker();</script>"));
}
}
但现在我面对的另一个问题是,我的文本框(日期选择器)节省了一个空字符串没有马瑟我选择什么值(什么时间)。
相关问题
- 1. radgrid控件填充下拉在插入/编辑模式
- 2. 在Telerik的radgrid控件编辑列
- 3. 从javascript访问Telerik RadGrid编辑模式
- 4. 如何在编辑模式下在GridView中查找控件()?
- 5. Telerik RadGrid在编辑模式下会导致值异常?
- 6. Telerik RadGrid在编辑模式下将BoundColumn设置为ReadOnly
- 7. 如何关闭Telerik Radgrid的默认编辑模式?
- 8. Telerik的radgrid控件
- 9. 如何从telerik radgrid访问telerik控件
- 10. 默认情况下,如何将Telerik RadGrid设置为编辑模式? (ASP.NET)
- 11. 无编辑模式的插入模式下的Telerik MVC网格问题
- 12. 使用Telerik的radgrid控件 - 如何设置自动生成的列中的日期格式编辑模式
- 13. GridView在编辑模式下查找行
- 14. Telerik RadGrid具有不同类型的编辑控件
- 15. 带MVP模式的Telerik RadGrid
- 16. 单击btnInsert后无法退出Telerik Radgrid编辑模式?
- 17. 如何在编辑模式下绑定下拉控件?
- 18. 访问Telerik RadGrid CommandItemTemplate控件
- 19. Telerik mvc网格编辑和插入模式中的timepicker
- 20. 在Telerik的radgrid控件的FormTemplate
- 21. Telerik的radgrid控件 - 可以在javascript
- 22. RadGrid - 在编辑模式下获取文本框
- 23. Telerik的radgrid控件条件显示
- 24. ASP.NET GridView:如何在编辑模式下控制列的格式?
- 25. 编辑模式下的嵌套RadGrid值没有变化
- 26. radgrid控件:获取有关编辑
- 27. telerik radgrid插入后选择项目
- 28. Telerik/radgrid等效(查找行项目/值)?
- 29. Telerik的radgrid控件 - LINQ和更新
- 30. Telerik的radgrid控件GridButtonColumn没有按钮