0

誰でも次のことを手伝ってもらえますか:

サーバー側のコードを呼び出して書籍のリストを取得し、html テーブルにロードする ajax メソッドがあります。

   function LoadData(data) {

  var tbody = $("#accountTable > tbody").html("");
  var thead = $("#accountTable > thead").html("");

   var rowHead = "<tr>"
                + "<th style='border-bottom-style:dotted;border-bottom-width:1px;font-size:10px'>Name</th>"
                + "<th style='border-bottom-style:dotted;border-bottom-width:1px;font-size:10px'>Quantity</th>"
                + "<th style='border-bottom-style:dotted;border-bottom-width:1px;font-size:10px'>Price</th>"
                + "<th style='border-bottom-style:dotted;border-bottom-width:1px;font-size:10px'>Status</th>"
                + "</tr>";
    $(rowHead).appendTo(thead);

    // ASP.NET encapsulates JSON responses in a property "d"
    if (data.hasOwnProperty("d")) 
    { 
        data = data.d;     
    }

    //iterate through and append to table
    for (i = 0; i < data.length; i++) {
     var rowText = "<tr><td style='text-align: left;font-size:10px;'>" + data[i].Name
        + "</td><td style='text-align: left;font-size:10px;'>" + data[i].Quantity 
        + "</td><td style='text-align: left;font-size:10px;'>" + data[i].Price 
        + "</td><td style='text-align: left;font-size:10px;'>"
        + "<select id=" + data[i].Id + ">"
        + "<option value='Unconfirmed'>UnConfirmed</option>" 
        + "<option value='Confirmed'>Confirmed</option>"
        + "<option value='Suspend'>Suspend</option>"
        + "</select></td></tr>";
        $(rowText).appendTo(tbody);

        } 
}

フィールド Status' (data[i].Status) の値をデータベースから select タグにバインドするにはどうすればよいですか。ユーザーはこの値を切り替えることができますが、デフォルト値はデータベースからの値にバインドする必要があります。前もって感謝します。

4

2 に答える 2

1

コードの対応する部分を次のように置き換えます (必要性を正しく理解している場合)。

for (i=0;i<data.length;i++) {
  var options = {"unconfirmed":"","confirmed":"","suspend":""};
  options[data[i].Status] = "selected";
  ...
  + "<option value='Unconfirmed' "+options.unconfirmed+">UnConfirmed</option>"
  + "<option value='Confirmed' "+options.confirmed+">Confirmed</option>"
  + "<option value='Suspend' "+options.suspend+">Suspend</option>"
  ...
}
于 2013-08-01T15:59:32.673 に答える
1

これを行う簡単な方法は、これを行うことです。

    + "<option value='Unconfirmed'"+(data[i].Status == "Unconfirmed"?" selected":"")+">UnConfirmed</option>" 
    + "<option value='Confirmed'"+(data[i].Status == "Confirmed"?" selected":"")+">Confirmed</option>"
    + "<option value='Suspend'"+(data[i].Status == "Suspend"?" selected":"")+">Suspend</option>"
于 2013-08-01T15:59:32.823 に答える