0

コンボボックスを埋めようとしていますが、データベースに新しいアイテムを追加するたびに、コンボボックスに重複した値が表示されます。コードは次のとおりです。

 var items = "";
 $.post("ProductFail.aspx?cmd=fill", function (d) {

    var lst = eval("(" + d + ")");
    alert(lst);

    for (var i = 0; i < lst.length; i++) {
        items += "<option value='#PID#'>#PNAME#</option>";
        items = items.replace("#PID#", lst[i].P_Number);
        items = items.replace("#PNAME#", lst[i].P_Name);
        $(".sel").append(items);
    }

 });
4

2 に答える 2

1

items は単一のコンボ ボックスであるため、+= を実行する必要はありません。".sel" の末尾にすでに追加されているからです。

for (var i = 0; i < lst.length; i++) {
    items = "<option value='#PID#'>#PNAME#</option>";
    items = items.replace("#PID#", lst[i].P_Number);
    items = items.replace("#PNAME#", lst[i].P_Name);
    $(".sel").append(items);
}
于 2013-05-26T07:42:59.610 に答える