2013-10-05 4 views
-1

Я задал этот вопрос раньше, но никто не смог дать удовлетворительный ответ. У меня есть веб-сайт викторины, в котором есть четыре переключателя для четырех вариантов. Когда пользователь нажимает кнопку отправки, выполняется скрипт PHP, который проверяет правильность ответа. Что мне нужно сделать, это отключить кнопку отправки после ее однократного нажатия. Все ответы, которые я получил в моем предыдущем вопросе, мешали функциональности моей формы (она не попадалась). Пожалуйста, дайте решение, которое не жертвует функциональностью формы. Кроме того, если вы дадите Javascript-код в качестве своего ответа, пожалуйста, помогите мне в реализации этого, поскольку я наивна в Javascript.Отключение кнопки отправки после одного щелчка, не жертвуя функциональностью формы

Вот мой код:

<form action="programming_skills.php?ad=<?php echo $a; ?>" method="post" id="quizsubmit"> 
     <tr align="center"> 
     <?php echo $row['q_desc']; ?><br /> 
     <input type="radio" name="ans" value="<?php echo $row['ans1']; ?>" <?php echo ($_POST['ans'] == $row['ans1'] ? 'checked' : '') ?>/> 
     <?php echo $row['ans1']; ?><br /> 
     <input type="radio" name="ans" value="<?php echo $row['ans2']; ?>" <?php echo ($_POST['ans'] == $row['ans2'] ? 'checked' : '') ?>/> 
     <?php echo $row['ans2']; ?><br /> 
     <input type="radio" name="ans" value="<?php echo $row['ans3']; ?>" <?php echo ($_POST['ans'] == $row['ans3'] ? 'checked' : '') ?>/> 
     <?php echo $row['ans3']; ?><br /> 
     <input type="radio" name="ans" value="<?php echo $row['ans4']; ?>" <?php echo ($_POST['ans'] == $row['ans4'] ? 'checked' : '') ?>/> 
     <?php echo $row['ans4']; ?><br /> 

     <tr><td><input type="submit" id="sub" value=Submit_Answer></td></tr></form></table><table border="1" align="center"> 

     <?php 

       if(isset($_POST['sub'])) 
      { 
       $a_value=$a; 
       $answer=$_POST['ans']; 
     $q2="select * from question where q_id=$a_value"; 
     $r2=mysql_query($q2); 
       if ($row=mysql_fetch_array($r2)) 
       $trueans=$row['true_ans']; 

        if ($answer==$trueans) 
       { 
        $userid=$_SESSION['user_email']; 
        $q1="select * from temp_score WHERE user_id='$userid'"; 
        $rw=mysql_query($q1); 
        while($row=mysql_fetch_assoc($rw)) 
        $score=$row['temp_score']; 
        $score=++$score; 
        $z="update temp_score set temp_score='$score' where user_id='$userid'"; 
        mysql_query($z); 
         ?> 


         Your answer is correct.  <?php    $a=++$a; ?> 

         &nbsp;Click <a href="programming_skills.php?ad=<?php echo $a; ?>">Here</a> for next question 
         <?php 
        } 
        else 
        { 
         ?>Your answer is wrong. The correct answer is <i>'<?php echo $trueans; ?>'</i>.<br /> 
     <?php    $a=++$a; ?> 

       Click <a href="programming_skills.php?ad=<?php echo $a; ?>">Here</a> for next question 
       <?php  } 
       } 

         ++$a; 
       $a=++$a; 

       } 
       } 
     } 
     else 
     { 
      echo '<meta http-equiv="refresh" content="0; url=results.php">'; 
      } 


      ?> 
+1

«Ответ не может решить мою проблему». Тогда зачем задавать вопрос? Кроме того, Java! = JavaScript. Кроме того, разместите соответствующий код. – Mark

+0

Вы получите те же ценные ответы, что и в своем http://stackoverflow.com/questions/19194356/how-to-diasble-a-submit-button-after-submission-in-php вопросе. – sskoko

+0

объясните, какое решение определили в прошлый раз и почему они вас не устраивают, мы не хотим повторно отправлять такое же решение ... –

ответ

0

Привет нашел скрипку, которая может помочь U, чтобы предотвратить событие по умолчанию, нажмите ниже код поможет ...

document.getElementsById("quizsubmit").onclick = function() { 
    this.disabled = true; 
}; 

http://jsfiddle.net/zb8CZ/

+0

Эта скрипка - ответ на мой предыдущий вопрос. Но, как я уже сказал, я не знаю, где разместить Javascript в своем коде. Я попытался разместить его в теге

0

Отключить после истечения перерыва:

<input type="submit" id="sub" value=Submit_Answer onclick="setTimeout('document.getElementById(\"sub\").disabled=!0;',100);">

0

Вы можете использовать событие OnClick на кнопку отправки, как это:

onclick="this.disabled='disabled';this.form.submit();" 

Таким образом, форма получает представлен через JS.

Или лучше использовать в onsubmit событие на элемент формы:

onsubmit="document.getElementById('submit_button').disabled = 'disabled';" 

«submit_button» является атрибутом ID вашей кнопки в этом случае.

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