2013-05-21 5 views
0

안녕하세요, 제가 javascript과 관련된 몇 가지 문제를 겪고 있으며, 저를 도울 수 있는지 궁금합니다.자바 스크립트에 간단한 제출이 작동하지 않습니다.

이 내 HTML 코드

<div class="Answer1"> 
    <form name="form"> 
     Enter your answer here : 
     <input type="text" size="10" name="answer" value=""> 
     <input type="button" value="Check" onclick="result();"> 
</form> 
</div> 

<!--2st sum --> 
<div class="Answer2"> 
    <form name="form"> 
     Enter your answer here : 
     <input type="text" size="10" name="answer" value=""> 
     <input type="button" value="Check" onclick="result2();"> 
    </form> 
</div> 

내가 그것을 완벽하게 잘 작동이 중 하나를 주석 경우,이 내 javascript

function result() { 
    var score = (document.form.answer.value); 
    if(score == 8) { 
     document.location.href="CorrectAdditionAnswer.html" 
} else { 
     document.location.href="IncorrectAddition.html" 
    } 
} 

function result2() { 
    var score = (document.form.answer.value); 
    if(score == 8) { 
     document.location.href="CorrectAdditionAnswer2.html" 
    } else { 
     document.location.href="IncorrectAddition.html" 
    } 
} 

하지만 그 댓글을 달았없는 경우가 나던 일 : (나는 ive가 잘못한 것을 이해하지 않는다 :(

+5

당신은 ** 리디렉션 할 수 없습니다와 ** 당신이이 당신이 또한 getElementByID Ian

+0

는이 양식을 제출 'name = "answer"를 사용하여 입력 시간을 늘리십시오. – Ligth

+1

으로 시도 – AndreM96

답변

0

JS

 function result() 
{ 
    var score =document.getElementsByName('answer1')[0].value; 

    if(score == 8) 
    { 
     document.getElementsByName('form1')[0].action = "http://www.wordpress.com"; 
     document.getElementsByName('form1')[0].submit(); 
    } 
    else 
    { 
     document.getElementsByName('form1')[0].action = "http://www.bing.com"; 
     document.getElementsByName('form2')[0].submit(); 
    } 
} 

function result2() 
{ 
    var score = document.getElementsByName('answer2')[0].value; 
    if(score == 8) 
    { 
     document.getElementsByName('form2')[0].action = "http://www.wordpress.com"; 
     document.getElementsByName('form2')[0].submit(); 
    } 
    else 
    { 
     document.getElementsByName('form2')[0].action = "http://www.bing.com"; 
     document.getElementsByName('form2')[0].submit(); 
    } 
} 

HTML

<div> 
<form name="form1"> 

     Enter your answer here : 
     <input type="text" size="10" name="answer1" value=""> 

     <input type="button" value="Check" onclick=" result();"> 
     </form> 

</div> 

<!--2st sum --> 
<div class="Answer2"> 

     <form name="form2"> 
     Enter your answer here : 
     <input type="text" size="10" name="answer2" value=""> 

     <input type="button" value="Check" onclick=" result2();"> 
     </form> 

</div> 
1

name 속성에 대해 동일한 값을 갖는 두 개의 formname에 대해 동일한 값을 갖는 두 개의 input이 있습니다.

+0

다른 형식의 이름, 응답 및 document.form.answer 이름과 관련이있는 모든 항목을 정렬 해 주셔서 감사합니다. 개개인의 이름을 완전히 밝히고 고맙습니다. – user2406551

0

여러 요소에 대해 동일한 ID를 사용하려면 javascript를 '격자'에 넣으십시오. DOM/Javascript/jQuery가 노드/요소를 더 빨리 찾을 수 있도록 고유 한 ID 이름을 가진 요소를 식별하는 것이 일반적으로 더 빠르고 쉽습니다.

이 형식은 모든 요소가 동일한 페이지에있는 경우 적절한 방법입니다.

<form name="form1"> 
    Enter your answer here : 
    <input type="text" size="10" id="answer1" name="answer1" value=""> 

    <input type="button" value="Check" onclick="result1();"> 
    </form> 

</div> 

<!--2st sum --> 
<div class="Answer2"> 

    <form name="form2"> 
    Enter your answer here : 
    <input type="text" size="10" id="answer2" name="answer2" value=""> 

    <input type="button" value="Check" onclick="result2();"> 
    </form> 

+0

그게 문제 였어! – user2406551

관련 문제