Member 14871802 Ответов: 1

В ASP .NET gridview после выбора даты из datepicker она отражается только в первой ячейке ..


Я создал сетку, в которой я реализовал datepicker. После выбора даты из datepicker второй/третьей ячейки она всегда отражается только в первой ячейке.

Пожалуйста, помогите ..!

Что я уже пробовал:

Это код jquery:

$(function () {
    $("#<%= gvRequests.ClientID %>").find("input[id$='txtApprovalEndDate']").datepicker();
});
//Re-Create for on page postback
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function () {
     $("#<%= gvRequests.ClientID %>").find("input[id$='txtApprovalEndDate']").datepicker();
});


Это код представления сетки :
<asp:templatefield headertext="Approval End Date" insertvisible="False">
                           <itemtemplate>
                                <asp:textbox id="txtApprovalEndDate" clientidmode="Static" text="" dataformatstring="{dd/MM/yyyy}" cssclass="Datepicker" maxlength="10" runat="server">

Fernando_Costa

Я не уверен, что вы хотите, пожалуйста, будьте более ясны

1 Ответов

Рейтинг:
2

F-ES Sitecore

У вас есть ClientIDMode, установленный на "статический", поэтому все текстовые поля будут иметь один и тот же идентификатор, который является недопустимым, идентификаторы должны быть уникальными. Браузер просто использует первый и игнорирует остальные. Так что удалить режиме параметр ClientID

<asp:TextBox ID="txtApprovalEndDate" Text="" dataformatstring="{dd/MM/yyyy}" cssclass="Datepicker" maxlength="10" runat="server" />


Теперь обновите js, чтобы найти элемент. Используйте селектор *= , чтобы найти элементы, содержащие этот текст в своем идентификаторе

$("#<%= gvRequests.ClientID %>").find("input[id*='txtApprovalEndDate']").datepicker();