2013-01-23 41 views
0

我有一個JQuery Datepicker綁定正確(我覺得)到gridview。它工作正常,並在網格和每一行的所有文本框中完美顯示。JQuery datepicker不向gridview輸出值

問題是它只將值輸出到第一行。

所以當我點擊網格的第10行時,DatePicker在第10行上彈出,但是當我選擇一個日期時,該日期僅填充在網格的第一行。

無論我選擇哪一行,它總是隻將值輸出到第一行。

任何幫助將不勝感激。

我試圖通過兩個文本框ID以及類名沒有運氣附加DatePicker。

感謝 Ashutosh說

$("#txtGivenDate").datepicker({ dateFormat: "dd/mm/yy", max: '0', changeYear: true,   changeMonth: true }); 

和電網的標記是如下:

<asp:TemplateField HeaderText="Given Date" ControlStyle-Width="90%" HeaderStyle-Width="9%"> 
       <ItemTemplate> 
        <asp:TextBox ID="txtGivenDate" runat="server" Text='<%#Bind("GivenDate")%>' BorderStyle="None" 
         CssClass="youpi"></asp:TextBox> 
       </ItemTemplate> 
      </asp:TemplateField> 

嘗試所有可能的解決方案

  1. 使用類名稱,而不是ID
  2. 使用標識確定t的名字extbox
  3. 在文本框聲明中使用ClientIDMode = Static
  4. 在GridView的RowCreated事件上從代碼後面附加JS。

似乎沒有工作。

感謝 Ashutosh說

+3

你的代碼在哪裏? – muthu

+0

你是怎麼做的。提供你的aspx標記代碼。 –

回答

0

我想我想出了答案。

問題出在ClientIDMode上。

我們需要將文本框的ClientIDMode設置爲「AutoID」。

設置此工作正常,問題已解決。

謝謝大家。

0

我建議你$('#'+yourControl.ClientID).datepicker(...);初始化追加到GridView的RowDataBound事件的StringBuilder,然後註冊StringBuilder的作爲啓動腳本中的所有行已經被數據綁定後,在網格的DataBound事件。

編輯:你也可以嘗試使用類名稱。例如:$('.youpi').datepicker();

+0

是否做到了。不起作用! –

+0

增加了另外一個建議 – Echilon

+0

試了兩個作爲我的節目編輯。無法獲得理想的結果。 –