2017-10-19 21 views
1

私は基本的なカードゲームを作っていますが、クリックしたカードの値を返す必要がありますが、私は未定義のエラーメッセージが表示されています。imgタグで返される値はありません

function flipCard(){ 
    var g = document.getElementById("playingCard").value; 
    alert(g); 
} 

<body> 
    <img src="card.png" id="playingCard" value="20" onclick="flipCard()"/> 
</body> 
+0

私はトランプカードが1つしかないので、すべて同じIDを持っているのだろうかと思います。 'this'パラメータをflipCardに渡し、*は*クリックされたimgであり、getElementByIdを使いこなす必要はありません。 – James

+0

'value'はimgタグでサポートされている属性ではありません。カスタム属性の場合は 'data-value'を使用します。 – d3L

+0

@James正しいカードがありますが、私はただ一人を働かせて、私が探している結果を返そうとしていました。私はそのd3Lを試みます。ありがとうございます。 – Drumbo1969

答えて

6

imgタグはvalueのデフォルトプロパティを持っていません。あなたはgetAttribute機能を試すことができます。

function flipCard(){ 
    var g = document.getElementById("playingCard").getAttribute('value'); 
    alert(g); 
} 
+0

ありがとうございます。私はそれを試みます。 – Drumbo1969

+0

OMGそれは働きます!大変ありがとうございます。私は昨夜2時間100種類のオプションを調べ、試しました。最も簡単な解決策は私にナッツをもたらします。 – Drumbo1969

+0

他のカードにIveが追加すると、リストの最初のカードから返される値だけが返されるようになりました。私はそれが属性 – Drumbo1969

関連する問題