我在ASP.net文本框中实现了日期时间选择器,但是当我在gridview或嵌套gridview中使用它时,它会失败..
我想要的是...... 通过这个JQuery函数
$(function () {
$("#<%= txtDate.ClientID %>").datepicker();
});
在给定样本点击嵌套网格视图时显示日期时间选择器。
<asp:GridView ID="GV_Proc" runat="server" AutoGenerateColumns="false" CssClass="Grid"
DataKeyNames="Procedure_Code" OnRowDataBound="GV_ProcOnRowDataBound"
onselectedindexchanged="gvProc_SelectedIndexChanged" Width="512px">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<img alt = "" style="cursor: pointer" src="../images/plus.png" />
<asp:Panel ID="pnldiagtype" runat="server" Style="display: none">
<asp:GridView ID="gvProctype" runat="server" AutoGenerateColumns="false" CssClass = "ChildGrid">
<Columns>
<asp:TemplateField HeaderText="Select" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="">
<ItemTemplate>
<asp:CheckBox ID="chk_Select" runat="server"/>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemStyle Width="8%" />
</asp:TemplateField>
<asp:BoundField ItemStyle-Width="20%" DataField="Procedure_Type_ID" HeaderText="Procedure Type Id" />
<asp:BoundField ItemStyle-Width="20%" DataField="Procedure_Code" HeaderText="Procedure Code" />
<asp:BoundField ItemStyle-Width="100%" DataField="Procedure_Type_Desc" HeaderText="Description" />
<asp:TemplateField HeaderText="Remarks" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="">
<ItemTemplate>
<asp:TextBox ID="txt_Remarks" CssClass=".text" runat="server"></asp:TextBox>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemStyle Width="8%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Date" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="">
<ItemTemplate>
<asp:TextBox ID="txtDate" runat="server" />
<img src="../calender.png" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemStyle Width="8%" />
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Panel>
</ItemTemplate>
<ItemStyle Width="8%" />
</asp:TemplateField>
<asp:BoundField ItemStyle-Width="150px" DataField="Procedure_Code" HeaderText="Procedure ID"/>
<asp:BoundField ItemStyle-Width="150px" DataField="Procedure_Description" HeaderText="Procedure Name" />
</Columns>
当我尝试构建它时,它会显示
当前上下文中不存在名称“txtDate”
任何帮助都是合适的
当我使用没有网格视图的相同功能时,运行成功..
我正在使用以下脚本和样式表
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/themes/base/jquery-ui.css" type="text/css" media="all" />
<link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="//code.jquery.com/jquery-1.8.0.min.js"></script>
<script type="text/javascript" src="//code.jquery.com/jquery-1.8.0.js"></script>
<script type="text/javascript" src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
更新:
<script type="text/javascript">
$(document).ready(function () {
$('.datepicker-text').datepicker();
});
并将textBox属性更新为
<asp:TextBox ID="txtDate" runat="server" CssClass="datepicker-text"/>
答案 0 :(得分:0)
datepicker
,以便存在所述对象。
在您的日期文本框中放置css
课程,用它来选择datepicker
的文本框,因为可以有多行。
<asp:TextBox ID="txtDate" runat="server" CssClass="datepicker-text"/>
然后在datepicker
上指定document.ready
作为
$('.datepicker-text').datepicker();
答案 1 :(得分:0)
为什么使用多个jquery。您必须只使用一个jquery(生产中的最小值):
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="//code.jquery.com/jquery-1.8.0.min.js"></script>
<script type="text/javascript" src="//code.jquery.com/jquery-1.8.0.js"></script>
然后你谈论一个构建错误。你可以发布服务器代码吗?您无法使用txtDate获取txtDate,但必须从gridviewrow开始使用FindControl(“txtDate”)
答案 2 :(得分:-1)
这个怎么样?获取文本框并使用textmode
属性并指定类
<asp:TextBox ID="txtDate" runat="server" TextMode="datepicker-text"/>
因为有多个script tags
,我认为它与其他人相互冲突,所以称之为
$(function () {
var jQuery_1_11_4 = $.noConflict(true);
jQuery_1_11_4(".datepicker-text").datepicker();
});