検索ボタンをクリックし、GridView コントロールのコンテンツに html テーブル data(td) を追加し、HTML テーブルのデータを WebMethod からロードするシナリオを次に示します。問題は、[検索] ボタンをクリックするたびに、GridView がテーブル データに同じ行のレコードを追加するとき、それを回避する方法はありますか?
jQuery
$("#dialog_link").click(function (e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "CustomerSearch.aspx/SearchCustomer",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ value: $("#search_key").val() }),
dataType: "json",
async: true,
success: function (data, status) {
var table;
console.log(data);
for (var i = 0; i < data.d.length; i++) {
table += "<tr><td class='key' style='display:none'>" + data.d[i].custid + "</td>" +
"<td><a class='custlink' style='text-decoration:none' href=#>" + data.d[i].custname + "</a></td>" +
"<td>" + data.d[i].mobno + "</td>" +
"<td>" + data.d[i].email + "</td></tr>";
}
$("#gvCustomer").append(table);
},
error: function (data, status, error) {
//console.log(error)
},
});
HTML
<div id="search_result" style="margin-top:10px">
<asp:GridView ID="gvCustomer" runat="server" Width="100%"></asp:GridView>
</div >