2013-05-21 3 views
0

Привет, ребята, у меня проблемы с javascript, и мне было интересно, можете ли вы мне помочь?JavaScript простой submit не работает

Это мой 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" 
    } 
} 

Если я закомментировать одну из них, он отлично работает, но если его не заметил оно не работа :(Я не понимаю, что я сделал неправильно :(

+5

Вы не можете перенаправить ** и ** отправить форму – Ian

+0

Вы попробуйте с getElementByID Ligth

+1

Также у вас есть два раз ввод с именем 'name =" answer "' – 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

У вас есть два form с тем же значением для атрибута name и два input с тем же значением для name.

+0

Большое спасибо. Ив разобрал все, что нужно было делать с разными именами форм, ответами и именами document.form.answer, мне пришлось дать индивидуальные имена, которые теперь полностью функционируют, теперь благодарим вас! – user2406551

0

Чтобы иметь одинаковый идентификатор для нескольких элементов, поместите javascript в «тупик». Определить свой элемент с уникальным идентификатором, как правило, быстрее и проще для DOM/Javascript/jQuery быстрее найти узел/элемент.

Этот формат является подходящим методом, если все элементы находятся на одной странице.

<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

Смежные вопросы