簡體   English   中英

如何在GridView中按行設置jquery模式內的asp文本框的值

[英]how to set value for asp Textbox inside jquery modal by row in gridview

我在GridView的jquery模態中有一個關於textbox(tb)的問題。 基本上,問題在於tb的值與我在gridview中單擊其他行中的模態相同,即使我輸入“ tr”來設置該行也是如此。 密鑰是“ id_rN”和“ rN”。 情況是:

  1. 單擊表格鏈接中的網格視圖的第一行
  2. 以模態形式在tb中插入數據(例如:hello)
  3. 封閉模式
  4. 單擊GridView中第2行的模式鏈接,該值與第1行相同

我將顯示它的圖片:

單擊“備注”列的“添加/編輯”以顯示模式彈出窗口

模態文本框row1顯示“你好”

您可以看到模式tb在row1和row2上都得到相同的值。

這是腳本:

$('a[data-toggle=modal]').click(function () {

            var data_pN = String($(".pN", $(this).closest("tr")).html());
            var data_cN = String($(".cN", $(this).closest("tr")).html());
            var data_aN = String($(".aN", $(this).closest("tr")).html());
            var data_rN = $('#<%=GridView1.ClientID %>').find('[id*="id_rN"]', $(this).closest("tr")).val(); //variable for textbox in modal



            $('input[id*="id_pN"]').val(data_pN);
            $('input[id*="id_cN"]').val(data_cN);
            $('input[id*="id_aN"]').val(data_aN);
            $('[id*="rN"]', $(this).closest("tr")).val(data_rN); //get value from texbox modal to textbox for column 'Remarktest'

        }); 

這是gridview html:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowDeleting="GridView1_RowDeleting"
                CssClass="table table-hover table-striped" GridLines="None" RowStyle-BackColor="#5AC3DE"
                AlternatingRowStyle-BackColor="#1ac6ff" Font-Size="Smaller">
                <Columns>
                    <asp:BoundField DataField="Project No." HeaderText="Project No." ItemStyle-CssClass="pN" />
                    <asp:BoundField DataField="Ctr No." HeaderText="Ctr No." ItemStyle-CssClass="cN" />
                    <asp:BoundField DataField="Activity" HeaderText="Activity" ItemStyle-CssClass="aN" />
                    <asp:TemplateField HeaderText="ad" >
                        <ItemTemplate>
                            <asp:TextBox ID="rN" runat="server"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <%--<asp:BoundField DataField="Remark" HeaderText="Remark" ItemStyle-CssClass="rN"  Visible="false"/>--%>
                    <asp:TemplateField HeaderText="Remarks">
                        <ItemTemplate>
                        <!-- Link trigger modal -->
                            <a data-toggle="modal" href="#myModal" id="modalLink">Add/Edit</a>
                            <%--<asp:TextBox ID="rN" runat="server"></asp:TextBox>--%>
                            <!-- Modal tabindex="-1" role="dialog" div class="modal-dialog modal-lg" role="document"-->
                            <div class="modal container fade" id="myModal" aria-labelledby="myModalLabel" style="width: 60%;
                                margin-bottom: 20%">
                                <%--<div class="modal-dialog modal-lg">--%>
                                <%--<div class="modal-content">--%>
                                <div class="modal-header">
                                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                                        <span aria-hidden="true">&times;</span></button>
                                    <h3 class="modal-title" id="myModalLabel">
                                        Details</h3>
                                </div>
                                <div class="modal-body">
                                    <div class="row">
                                        <div class="col-md-2">
                                            <div class="form-group">
                                                <h4>
                                                    Project No.</h4>
                                                <asp:TextBox ID="id_pN" runat="server" CssClass="form-control" ReadOnly="true" Font-Size="Smaller"></asp:TextBox>
                                            </div>
                                        </div>
                                        <div class="col-md-2">
                                            <div class="form-group">
                                                <h4>
                                                    Ctr No.</h4>
                                                <asp:TextBox ID="id_cN" runat="server" CssClass=" form-control" ReadOnly="true" Font-Size="Smaller"></asp:TextBox>
                                            </div>
                                        </div>
                                        <div class="col-md-3">
                                            <div class="form-group">
                                                <h4>
                                                    Activity</h4>
                                                <asp:TextBox ID="id_aN" runat="server" CssClass=" form-control" ReadOnly="true" Font-Size="Smaller"></asp:TextBox>
                                            </div>
                                        </div>
                                        <div class="col-md-5">
                                            <div class="form-group">
                                                <h4>
                                                    Remark</h4>
                                                <asp:TextBox ID="id_rN" runat="server" CssClass="form-control" TextMode="MultiLine" Rows="4"
                                                    Font-Size="Small"></asp:TextBox>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="modal-footer">

                                        <button type="button" class="btn btn-sm btn-default" data-dismiss="modal" >
                                            Close</button>
                                    </div>
                                </div>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:BoundField DataField="Actual" HeaderText="Actual To End of Week" />
                    <asp:TemplateField HeaderText="Sat st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_sat" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Sat ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_sat" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Sun st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_sun" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Sun ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_sun" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Mon st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_mon" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Mon ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_mon" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Tue st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_tue" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Tue ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_tue" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Wed st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_wed" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Wed ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_wed" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Thu st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_thu" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Thu ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_thu" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Fri st">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_nt_fri" runat="server" CssClass="tb_day"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Fri ot">
                        <ItemTemplate>
                            <asp:TextBox ID="tb_ot_fri" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="hourtest">
                        <ItemTemplate>
                            <asp:TextBox ID="hTest" runat="server" CssClass="tb_day" ReadOnly="true"></asp:TextBox></ItemTemplate>
                    </asp:TemplateField>

                    <asp:BoundField DataField="Week" HeaderText="Weekly Total" />
                    <asp:BoundField DataField="Remain" HeaderText="Remaining hour" />
                    <asp:CommandField ShowEditButton="True" ButtonType="Button" />
                    <asp:CommandField ShowDeleteButton="True" ButtonType="Button" />
                </Columns>
            </asp:GridView>

很高興任何人都可以幫助我。 :)

試試這個

HTML標記:添加一個類toyour文本框:

<asp:TextBox ID="id_pN" runat="server" CssClass="cls_pN form-control" ReadOnly="true" Font-Size="Smaller"></asp:TextBox>

<asp:TextBox ID="id_cN" runat="server" CssClass="cls_cN form-control" ReadOnly="true" Font-Size="Smaller"></asp:TextBox>

JQUERY:

$('a[data-toggle=modal]').click(function () {
            var self=$(this);
            var selfTR=self.closest('tr');

            // get current row textbox value
            var txt_p=selfTR.find(".cls_pN").val();
            var txt_c=selfTR.find(".cls_cN").val();

            alert(txt_p);
            alert(txt_c);
    }); 

暫無
暫無

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

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