2014-09-27 4 views
1

나는 이렇게 www를 만들고 싶다! 사람들이 처음으로 다음 button.And을 클릭 상단 텍스트 상자에 숫자를 입력 한 다음 텍스트 상자에 임의의 숫자를 표시하고 상단 텍스트 상자와 아래 텍스트 상자 사이에 일치 얼마나 많은 숫자 계산에 지역을 위해 가치를 얻는 방법?

<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
<script language ="JavaScript"> 
 
    function random_number() 
 
    { 
 
\t var i; 
 
\t var show_text = document.getElementsByClassName('data'); 
 
\t for(i=0;i<8;i +=1){ 
 
\t a =Math.floor((Math.random()*39)+1); 
 
\t show_text[i].value=a;} 
 
\t 
 
\t var j; 
 
\t var edit_text = document.getElementsByClassName('edit'); 
 
\t for(j=0;j<8;j +=1){ 
 
\t edit_text[j].value=b;} 
 
\t 
 

 
\t 
 
\t var count=0; 
 
\t if(show_text[i].value==edit_text[j].value){ 
 
\t count +=1; 
 
\t document.getElementById("cc").value=count;} 
 
\t else if(edit_text[j].value==null){document.getElementById("cc").value="Please enter numbers first";} 
 
    } 
 
</script> 
 
</head> 
 

 
<body> 
 
<h1>Random Number </h1> 
 
<p> 
 
Type: 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<input type="text" Class="edit" size="3" /> 
 
<br> 
 
Scol: 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<input type="text" Class="data" size="3" /> 
 
<br> 
 
<input type="button" value="Random" onClick="random_number()" /> 
 
<p id="cc" /p> 
 
</p> 
 
</body> 
 

 
</html>
내가 원하는. 코드에 어떤 문제가 있는지 잘 모르겠습니다. 누구든지 나를 도울 수 있습니까?

+0

변수 "B"beggining을 defined..for되지 않은 도움을받을 수없는 경우에는 스크립트가 중단 위치를 확인하기 위해 여러 지점에서 "alert('test');"를 사용합니다. 또한 "elseif"를 "for"루프에 넣으려고한다고 생각합니다. – zoran404

+0

Protip -> 좋아하는 브라우저에서 dev 도구를 사용하십시오. Chrome/Internet Explorer 기본 버튼은 F12입니다.그런 식으로 변수 "b"가 정의되지 않았 음을 알 수 있습니다. 또한 발생하는 정확한 줄에 다른 모든 스크립트 오류가 있습니다. – Matt

+0

남자 너무 부드럽고 이런 질문에 대답하는 것을 멈추어야합니다. –

답변

1

개의 문제점이 있습니다. 문제가 해결되었지만 작동하지 않는 이유를 이해하려면 몇 가지 사항을 명심해야합니다. 나는이 시간을 바칠 여력이 있기 때문에 그것을 고치기로 결정했다. 그러나 다음에 올바른 방향으로 당신을 가리키는 개발자 툴 (브라우저의 바로 콘솔)을 살펴 보는 것이 좋습니다.

  • 당신은 document.getElementById("cc").value를 호출하여 요소의 내용을 설정하지,이 당신의 단락의 구문은 <p id="cc" /p></p> 대신 <p id="cc"></p>
  • b이었다
  • 되지 단락 귀하의 경우처럼 필드를 형성하기 위해 적용 정의되지 않았습니다. 아직 사용하고 있습니다.
  • for loops 0에서 8까지의 숫자는 7 (색인 6) 인 html에만 관계없이 배열의 8 번째 요소 (색인 6)에 액세스하려고 시도합니다.

function random_number() { 
 
    var show_text = document.getElementsByClassName('data'); 
 
    for (var i = 0; i < 7; i++) { 
 
    show_text[i].value = Math.floor((Math.random() * 39) + 1); 
 
    } 
 

 
    var edit_text = document.getElementsByClassName('edit'); 
 
    var count = 0; 
 
    for (var j = 0; j < 7; j++) { 
 
    if (show_text[j].value == edit_text[j].value) { 
 
     count++; 
 
    } 
 
    } 
 

 
    document.getElementById("cc").innerHTML = count; 
 
}
<h1>Random Number </h1> 
 
<p> 
 
    Type: 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <input type="text" Class="edit" size="3" /> 
 
    <br>Scol: 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <input type="text" Class="data" size="3" /> 
 
    <br> 
 
    <input type="button" value="Random" onClick="random_number()" /> 
 
    <p id="cc"> 
 
    </p>

당신이 메시지 대신의 경우는 제로의 수를 표시 어디 의도적 부분을 제거 참고. 나는 당신의 질문이 이것 같이 더 나은 응답다는 것을 믿는다, 당신은 당신이 나중에 원하는 모든 여분 기능을 추가 할 수있다.

+0

감사합니다! 나는 너의 모든 제안을 배웠다! 나는 다음 번에 더 조심할 것이다! 이번에는 어리석은 실수를 저 지르지 만, 다음 번에 같은 실수를하는 것은 어리석은 짓은하지 않을 것이라고 약속합니다! 정말 고마워!!! –

+0

당신이 두 사람이 나에게 최상이기 때문에 어느 것이 가장 좋은 대답인지 선택하기가 어렵습니다 !! –

1

이놈이 ... 난 그냥 다있어 너무 그것을 고정 :/

  • 'i'을하지, '< 7'하고의해야 '8' -> 당신이 많은
  • 에 액세스를 시도했기 때문에 처음 망쳐 곳입니다 당신은 또한 또한 <body>
  • 당신에 <p></p> 태그를 엉망
  • 당신은 <p> 요소를 설정하는 대신 .value의 .innerHTML을 사용하기로되어있다 브라우저 개발 도구 (F12 기본값) 및 디버깅을 사용 -검증 이전에 의견에 명시된 바와 같이

을 정의되지 않은 'b''for' 루프

  • 값에 넣어하지 않았기 때문에 일한 적이하는의 수 . dev에 도구를 사용하면

    <!DOCTYPE html> 
    <html> 
    
    <head> 
    <script language ="JavaScript"> 
        function random_number() 
        { 
        var i; 
        var show_text = document.getElementsByClassName('data'); 
    
    
        for(i=0;i<7;i +=1){ 
         a = Math.floor((Math.random()*39)+1); 
         show_text[i].value = a; 
        } 
    
        var j; 
        var edit_text = document.getElementsByClassName('edit'); 
        for(j=0;j<7;j +=1){ 
         b = "lol"; 
         edit_text[j].value=b; 
        } 
    
    
    
        var count=0; 
        for(i=0;i<7;i +=1){ 
         if(show_text[i].value==edit_text[i].value){ 
          count +=1; 
          document.getElementById("cc").value=count; 
         } 
         else if(edit_text[i].value==null){ 
          document.getElementById("cc").innerHTML="Please enter numbers first"; 
          return; 
         } 
        } 
    
        document.getElementById("cc").innerHTML="We have "+count+" matches!"; 
    
        } 
    </script> 
    </head> 
    
    <body> 
    <h1>Random Number </h1> 
    <p> 
    Type: 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <input type="text" Class="edit" size="3" /> 
    <br> 
    Scol: 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <input type="text" Class="data" size="3" /> 
    <br> 
    <input type="button" value="Random" onClick="random_number()" /> 
    <p id="cc"></p> 
    </p> 
    </body> 
    
    </html> 
    
  • +0

    다행스럽게도 나는 아무것도 놓치지 않았다 : P –

    +0

    후안과 매트 - 너희들은 아주 좋다. 더 적절한 대답은 101 개의 자바 스크립트 DOM 레슨을 가리킬 수도 있습니다. –

    +0

    감사합니다! 나는 너의 모든 제안을 배웠다! 나는 다음 번에 더 조심할 것이다! 이번에는 어리석은 실수를 저 지르지 만, 다음 번에 같은 실수를하는 것은 어리석은 짓은하지 않을 것이라고 약속합니다! 정말 고마워!!! –