0

こんにちは、Apply() 関数に Status を渡す必要があります。しかし、Apply("+ Status +"); を入れると forループに入ると、うまくいかないようです。ただし、ステータスが何らかの数値に等しい場合は機能します。助けてください。これが私のコードです。

ステータスは「完了、未完了」と同じです。

function querySuccess(tx, results, Type, Status, Amount, Years){
    var len = results.rows.length;
    var display = "";

    display +="<table>";
    display +="<tr>";
    display +="<td>First Year Rate</td>";
    display +="<td>Apply Now</td>";
    display +="</tr>";

    for (var i=0; i<len; i++){
    display +="<tr>";
    display +="<td>"+ results.rows.item(i).first_year+"</td>";
    display +="<td><input type'button' onClick='Apply();' value='Apply'/></td>";
    display +="</tr>";
    }
    display +="</table>";

}
4

5 に答える 5

0
function querySuccess(tx, results, Type, Status, Amount, Years){
    var len = results.rows.length;
    var display = document.createElement('table');
    var tr = document.createElement('tr');
    var td = document.createElement('td');
    var tmpEl;

    var tmpTr = tr.cloneNode();
    var tmpTd = td.cloneNode();
    tmpTd.textContent = "First Year Rate";
    tmpTr.appendChild(tmpTd);
    tmpTd = td.cloneNode();
    tmpTd.textContent = "Apply Now";
    tmpTr.appendChild(tmpTd);

    display.appendChild(tmpTr);

    for (var i=0; i<len; i++){
        tmpTr = tr.cloneNode();
        tmpTd = td.cloneNode();
        tmpTd.textContent = result.rows.item[i].first_year;
        tmpTr.appendChild(tmpTd);
        tmpEl = document.createElement('input');
        tmpEl.type = 'button';
        tmpEl.value = 'Apply';
        tmpEl.onclick = Apply; // yeah, just like this
        tmpTd = td.cloneNode();
        tmpTd.appendChild(tmpEl);
        tmpTr.appendChild(tmpTd);
    }

}
于 2013-03-01T08:33:18.370 に答える
0

これをチェックしてください。これはうまくいきます

表示 +='<td><input type="button" onClick="Apply('+status+')" value="Apply"/></td>'

于 2013-03-01T08:26:57.730 に答える
0

試してみてくださいApply(\""+ Status +"\");。エスケープされた引用符は、テキストがあることを JS に伝えます。それ以外の場合は、いくつかの変数があると見なします。

一重引用符を使用できますApply('"+ Status +"');が、これにはコードにいくつかの変更が必要です。

于 2013-03-01T08:19:20.107 に答える
0

status が文字列の場合、次のようにカプセル化する必要があります。

display +="onClick=\"Apply('"+ Status +"');\" ";

一重引用符と二重引用符の使い方の違いに注意してください

于 2013-03-01T08:19:47.550 に答える
0

Status が文字列の場合は、"" を使用する必要があります ("String" など)。あなたの場合、これはうまくいくはずです:

display +="<td><input type'button' onClick='Apply("'+Status+'");' value='Apply'/></td>";

数字はアポストロフィを必要としないため機能し、それが正しく処理される理由です。

より簡単な例を作成し、コードを使用してそれを示しました。JavaScript コンソールをチェックして結果を確認してください: http://jsfiddle.net/EE8hN/

于 2013-03-01T08:22:15.317 に答える