簡體   English   中英

創建具有多個asp:Repeater TextBoxes的Bootstrap-Datepicker

[英]Creating Bootstrap-Datepicker with multiple asp:Repeater TextBoxes

我正在使用asp:Repeater創建表單,該轉發器的每個對象都有一個文本框,該文本框需要將其鏈接到它自己的唯一bootstrap-datepicker。 (datepicker是twitter-bootstrap 2.3.2的javascript插件,可在此處找到: http ://www.eyecon.ro/bootstrap-datepicker-希望添加此鏈接是安全的,但實際上並不需要查看關於問題的頁面)

我的問題是我無法使用asp.net clientid正確定位文本框。

aspx代碼:

<asp:Repeater ID="repList" runat="server">
    <HeaderTemplate>
        <ul class="gridul">
            <li class="gridli userrole"><span class="short liheader">Jenz ID</span></li>
            <li class="gridli"><span class="long liheader">Name</span></li>
            <li class="gridli"><span class="short liheader">S/S/F</span></li>
            <li class="gridli"><span class="short liheader">Date</span></li>
            <li class="gridli"><span class="long liheader">Payment Type</span></li>
            <li class="gridli"><span class="mid liheader">Sent to B.O.</span></li>
        </ul>
    </HeaderTemplate>
    <ItemTemplate>
        <ul class="gridul">
            <li class="gridli userrole"><span class="short"><%# Eval("jenzabar_id") %></span></li>
            <li class="gridli"><span class="long"><%# Eval("first_name") %>&nbsp<%# Eval("last_name") %></span></li>
            <li class="gridli"><span class="short"><%# Eval("student_staff_faculty") %></span></li>
            <li class="gridli"><span class="short"><%# Eval("reservation_date") %></span></li>
            <li class="gridli"><span class="long"><asp:TextBox ID="PayType" runat="server" Text='<%# Eval("payment_type") %>' /></span></li>
            <li class="gridli"><span class="mid"><asp:TextBox ID="SentBo" runat="server" Text='<%# Eval("sent_to_bo") %>' /></span></li>
        </ul>
        <asp:HiddenField ID="hidJenz" runat="server" Value='<%# Eval("jenzabar_id") %>' />
        <asp:HiddenField ID="hidPayType" runat="server" Value='<%# Eval("payment_type") %>' />
        <asp:HiddenField ID="hidSentBo" runat="server" Value='<%# Eval("sent_to_bo") %>' />
    </ItemTemplate>
</asp:Repeater>

定位的文本框是:

<asp:TextBox ID="SentBo" runat="server" Text='<%# Eval("sent_to_bo") %>' />

在我的scripts.js中,我可以通過查看aspx源並復制生成的ID(例如“ ctl00_MainContent_repList_ctl01_SentBo”)來定位單個文本框,但是我不知道如何在轉發器中使用<%#SentBo.ClientID%>。 就是行不通。

例:

$(function () {
    $('ctl00_MainContent_repList_ctl01_SentBo').datepicker();
})

成功了

$(function () {
    $('<%#= SentBo.ClientID %>').datepicker();
})

不是

做了更多的挖掘。 終於找到答案了。

更換:

$('ctl00_MainContent_repList_ctl01_SentBo').datepicker();

有:

$(this).find("input[type=text][id*=SentBo]").datepicker();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM