0

$.ajax 呼び出しからデータを取得しますが、そのデータを正しく処理できません。これが私のコードです。

function OnSuccessResultSet(data, status) {
            var output;
            for (var i in data.recordset) {
                output += "<li><a href='#'>";
                for (var j = 0; j < metaName.length; j++) {
                    var testVar = metaName[j];
                    output += " <h2>" + data.recordset[i].testVar+ "</h2>";
                    alert(data.recordset[i].testVar);
                    alert(testVar);
                    alert(data.recordset[i].LABEL);
                };
                output += "</a></li>";
            }
            $(output).appendTo("#content1");
            $('#content1').listview('refresh');
        }

最初のアラートでは、未定義の戻り値が返されます。2 番目のアラートで LABEL が返され、3 番目のアラートで LABEL の値が返されます。私の metaName には、レコードセットからの要素のすべての属性値があります。また、metaName 配列に $.ajax 呼び出しを入力します。私は自分の間違いを見つけません。:/

4

1 に答える 1

4

ここでは、探しているキーが変数に格納されているため、メンバー演算子としてドット表記ではなくブラケット表記を使用する必要があると思いますtestVar

alert(data.recordset[i][testVar]);

function OnSuccessResultSet(data, status) {
    var output, testVar;
    for (var i in data.recordset) {
        output += "<li><a href='#'>";
        for (var j = 0; j < metaName.length; j++) {
            testVar = metaName[j];
            output += " <h2>" + data.recordset[i][testVar]+ "</h2>";
        };
        output += "</a></li>";
    }
    $(output).appendTo("#content1");
    $('#content1').listview('refresh');
}
于 2013-07-17T11:44:29.450 に答える