2017-09-29 15 views
-1

HTMLの関数呼び出しから値をパラメータとして受け取るJavascript関数(ループを使用)を作成する必要があります。応答では、再生中のカードの裏面の画像を返します多くの場合、パラメータの値はです。JavaScriptを関数にパラメータを渡す

たとえば、値5を関数に渡すと、既存の表のHTMLページに表示されている関数から、カードの裏面の5つのイメージを取り戻す必要があります。

これまで私がこれまで持っていたことは次のとおりです。誰かが私が間違っている場所について正しい方向に向けるようにしてください(事前に何か助けてくれてありがとう)。

JS

function showCards(numcards) { 
    var data = ""; 
    while (numcards < 5) { 
    data += "<td><img src="http://www.college1.com/images/cards/gbCard52.gif" NAME="card0"></td>"; 
    numcards +=; 
    } 
    document.writeln(data); 
} 

HTML

<table border=0 style='margin:auto'> 
    <tr> 
    <td> 
    <form> 
     <input type="BUTTON" onClick="Javascript:alert('Dummy Link')" value="Deal > > >"> 
    </form> 
    </td> 
    <script type="text/javascript">showCards(5)</script> 
    <td> 
    <form> 
     <input type="BUTTON" onClick="Javascript:alert('Dummy Link')" value="< < < Hit Me"> 
    </form> 
    </td> 
</tr> 
</table> 
+0

それでは、このコードでは動作しませんか?あなたが望む行動に対してあなたが得る行動。あなたの機能は途中で何も戻ってきません。それはドキュメントに書き込むだけです。 – GolezTrol

+0

'"​​ Xufox

答えて

3

あなたのコード内で主に構文エラーがあります。

  1. いずれかの文字列内の二重引用符エスケープ(すなわち。"\"")、またはあなたの文字列を宣言するために単一引用符を使用しています。

  2. 間違った構文を使用してnumcardsを増やそうとしていました。正しい構文はnumcards++です。

  3. しかし、それはあなたが望むものではありません、あなたは0にそれをデクリメントします(すなわち。numcard--)カードのあなたの番号を取得したり、例えばfor loopを使用してnumcardsまでカウントします。

function showCards(numcards) { 
 
    var data = ""; 
 
    
 
    for (var i = 0; i < numcards; i++) { 
 
    data += '<td><img src="http://www.college1.com/images/cards/gbCard52.gif" NAME="card0"></td>'; 
 
    } 
 
    
 
    document.writeln(data); 
 
} 
 

 
showCards(5);
<table border=0 style='margin:auto'> 
 
    <tr> 
 
    <td> 
 
     <form><input type="BUTTON" onClick="Javascript:alert('Dummy Link')" value="Deal > > >"></form> 
 
    </td> 
 
    <td> 
 
     <form><input type="BUTTON" onClick="Javascript:alert('Dummy Link')" value="< < < Hit Me"></form> 
 
    </td> 
 
    </tr> 
 
</table>

+0

ありがとうございます。それはとても役に立ちます。 – Matthew

0

// where you want to append images tag 
 
var table = document.querySelector('tbody'); 
 

 
// you can call this method on click event 
 
function show(elem , param) { 
 
    var i = 0; 
 
    var data = document.createElement("tr"); 
 
    var td = ""; 
 
    while (param != i) { 
 
    
 
    td += "<td><img src='http://www.college1.com/images/cards/gbCard52.gif' NAME='card"+i+"'></td>"; 
 
    i++; 
 
    } 
 
    data.innerHTML = td; 
 
    // append html tr node 
 
    elem.appendChild(data); 
 
} 
 
// calling when the script is loaded 
 
show(table, 5);
<table> 
 
    <tbody> 
 
    </tbody> 
 
</table>

関連する問題