Ajax数据在下拉列表中没有正确绑定

时间:2017-03-31 05:45:57

标签: javascript asp.net ajax gridview

我有一个printf(),其中每行有多行,gridview个选项。究竟是什么情景, 每当我点击Edit按钮时,它都会将我重定向到下一个标签页,EDIT填充该行的SAP ID

但目前发生的事情是,当我第一次点击dropdownlist时,它只显示列表中的一个值,

  

但是当我   点击第二次,列表显示两个值。我不想要那个,我只想要点击编辑按钮的数据值。

下面是我的GridView和ajax代码,用于绑定值

GRIDVIEW

edit button

AJAX

<asp:GridView ID="grdSapDetails" runat="server" PageSize="10" AutoGenerateColumns="false">
                <Columns>
                    <asp:BoundField DataField="SAP_ID" HeaderText="Sap Id" />
                    <asp:BoundField DataField="SITE_NAME" HeaderText="Site Name" />
                    <asp:BoundField DataField="SITE_ADDRESS" HeaderText="Site Address" />
                    <asp:TemplateField HeaderText="Edit">
                        <ItemTemplate>
                            <input type="button" onclick='return HighlightTabFunction(this)' value="Edit" id="btnEdit" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

1 个答案:

答案 0 :(得分:3)

在添加新内容之前,您可能必须删除下拉列表项。您可以在dropdown select remove() children上致电{{3}}

success: function (r) {
            $('a[href="#tabs-2"]').click();
            var ddlSapID = $("[id*=ddlSapID]");
            ddlSapID.children().remove(); //this will remove option before appending new 
            ddlSapID.append($("<option></option>").val(r.d).html(row.cells[0].innerHTML));
            $("#hdnState").val(r.d);
        },