2016-08-15 2 views
0

JavaScript로 바위 종이 가위 게임을하고 있습니다. 사용자로부터 라디오 버튼 입력을받는 데 문제가 있습니다. 로봇이 한 라운드 우승하면 점수를 1에 더해야합니다. 매시간마다 점수가 매겨집니다.무선 입력이 검색되지 않습니다.

HTML :

<h2 id="score"><span id="pl1">0</span>-<span id="pl2">0</span></h2> 
<div id="left"> 
      <label for="rock">Rock</label><br> 
      <input type="radio" name="q" class="q" id="rock"></input><br> 
      <label for="paper">Paper</label><br> 
      <input type="radio" name="q" class="q" id="paper"></input><br> 
      <label for="scissors">Scissors</label><br> 
      <input type="radio" name="q" class="q" id="scissors"></input><br> 
      <button id="confirm" class="button" onClick="playBot()" style="margin-bottom: 10px;">Confirm</button> 
     </div><p id="result"></p> 

및 자바 스크립트 :

function playBot(){ 
var num = Math.floor((Math.random() * 4) + 1); // generate number between 1 and 3 which represents the item bot has chosen 
console.log(num); 
var rock = document.getElementById("rock").value; 
var paper = document.getElementById("paper").value; 
var scissors = document.getElementById("scissors").value; 
var result = document.getElementById("result"); 
    // 1 = rock, 2 = paper, 3 = scissors 
if (rock.checked == true && num != 2){ 
    pl1 = pl1 + 1; 
    document.getElementById("pl1").innerHTML = pl1; 
} else if (paper.checked == true && num != 3){ 
    pl1 = pl1 + 1; 
    document.getElementById("pl1").innerHTML = pl1; 
} else if (scissors.checked == true && num != 1){ 
    pl1 = pl1 + 1; 
    document.getElementById("pl1").innerHTML = pl1; 
} else { 
    pl2 = pl2 + 1; 
    document.getElementById("pl2").innerHTML = pl2; 
} 
} 

나도 작동하지 않는 한 for 루프와 함께 그 일을 시도했습니다 여기에 내가 해봤 코드입니다 . 소스는 나는 시도했다 : How to get value of selected radio button?

Get Radio Button Value with Javascript

http://www.w3schools.com/jsref/prop_radio_checked.asp

용지를 바위에 할당 할 때 당신은 엄격하게 값을 가져 오는 것

답변

0

미리 감사드립니다, 그리고 가위를이 라인 :

var rock = document.getElementById("rock").value; 
var paper = document.getElementById("paper").value; 
var scissors = document.getElementById("scissors").value; 

그러나 if 문은 t를보고 속성을 가져 오려고합니다. 그는 속성을 "확인"했습니다. 어느

var rock = document.getElementById("rock") 

로 전체 요소를 가져올하고 "확인"속성을 사용하거나 만

if (rock) 
{ 
    // Do something 
} 
+0

워와 답변에 대한 감사 값을 확인. 그것이 간단했다는 것을 몰랐다, 지금 중대한 작동한다! 다시 한 번 감사드립니다 :) –

+0

기꺼이 도와 드리겠습니다! 답변의 투표 버튼 아래에있는 체크 표시를 클릭하면 "수락 됨"으로 표시됩니다. 그것은 대단히 감사 할 것입니다. –

+0

그래, 아직 클릭 할 수 없어 3 분을 기다려야했다. –

관련 문제