我在gridview标题行内的asp.net页面中使用jquery ui datepicker,如下所示:
<asp:TemplateField SortExpression="Published" >
<HeaderTemplate>
<span id="spDate">
<asp:Button ID="Button2" runat="server" Text="<%$ Resources:Vacancies, DateRange %>" CssClass="chenge-a" />
</span>
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="PublishedLiteral" runat="server"
Text='<%# DateTime.Parse(Eval("Published", "{0:m}")) == DateTime.Now.Date ? string.Format("<span class=greenText>{0}</span>", GetGlobalResourceObject("Vacancies", "VacancyToday")) : DateTime.Parse(Eval("Published", "{0:d}")).ToString("dd MMM") %>' />
-
<asp:Literal ID="DeadlineLiteral" runat="server"
Text='<%# DateTime.Parse(Eval("Deadline", "{0:m}")) == DateTime.Now.Date ? string.Format("<span class=orangeText>{0}</span>", GetGlobalResourceObject("Vacancies", "VacancyToday")) : DateTime.Parse(Eval("Deadline", "{0:d}")).ToString("dd MMM") %>' />
</ItemTemplate>
</asp:TemplateField>
然后使用以下 Jquery 代码更改文本框的值:
<script type="text/javascript">
$(document).ready(function () {
$(".chenge-a").datepicker({
onSelect: function (value, date) {
alert('The chosen date is ' + value);
$(".txt").val(value);
}
});
$(".txt").on('change', function () {
alert('I am pretty sure the text box changed');
});
});
文本框是这样的:
<asp:TextBox ID="txtdatetemp" runat="server" AutoPostBack="True"
ontextchanged="txtdatetemp_TextChanged" class="txt" ></asp:TextBox>
它在gridview之外。我已将服务器端 text_changed 事件附加到它
protected void txtdatetemp_TextChanged(object sender, EventArgs e)
{
}
但它没有被调用。没有客户端功能
$(".txt").on('change', function ()
叫做。
我想在 jquery ui datepicker 中重新绑定更改日期的 gridview。请提出解决方案。
谢谢