2013-09-04 2 views
0

Я хочу сделать викторину. прежде всего, я делаю викторину. поэтому я хочу сделать валидацию, как заполнить все значения в форме, и ответ должен быть в опции ... Я пробую это с помощью рамки codeigniter. это мой ПосмотретьПроверка формы с помощью javascript с несколькими типами ввода типа

<?php include_once('header.php'); ?> 
<?php include_once('tnavbar.php'); ?> 

<script src="<?php echo base_url();?>/js/jquery-1.9.1.min.js"></script> 
<script> 
function validateForm1() //This javascript function is not working 
{ 
var j=<? echo $number;?>; 
for(var i=1; i<= j ; i++) 
var qus1=document.forms["myForm1"]["ques[i]"].value; 
var opt1=document.forms["myForm1"]["opt1[i]"].value; 
var opt2=document.forms["myForm1"]["opt2[i]"].value; 
var opt3=document.forms["myForm1"]["opt3[i]"].value; 
var ans1=document.forms["myForm1"]["ans1[i]"].value; 
if ((qus1==null || qus1=="")||(opt1==null || opt1=="")||(opt2==null || opt2=="")||  (opt3==null || opt3=="")||(ans1==null || ans1=="")) 
    { 
    alert("All field must be fill"); 
    return false; 
    } 
} 
</script> 

<div class="maincontent_area"> 
<div class="container"> 
    <div class="row"> 
     <div class="span12"> 
     <form name="myForm1" action="<? echo base_url()."/index.php/Tmcq_test/insertmcq";?>" onsubmit="return validateForm1()" method="post"> 


      <?php   for($i=1; $i<= $number; $i++){ 
//Here the $number is user input like 2,3, or 4 etc number of mcq 
?> 
    Question : <input type="text" name="ques[<?php echo $i;?>]"><br/> 
    Option 1 : <input type="text" name="opt1[<?php echo $i;?>]" ><br/> 
    Option 2 : <input type="text" name="opt2[<?php echo $i;?>]" ><br/> 
    Option 3 : <input type="text" name="opt3[<?php echo $i;?>]" ><br/> 
    &nbsp;Answer : &nbsp;<input type="text" name="ans[<?php echo $i;?>]" ><br/> 

    <br/> 
    <?php //echo $value->answer; 

    } ?> 
        <input type="hidden" name="quiz_name" value="<?php echo $name;?>"> 
        <input type="hidden" name="sub_id" value="<?php echo $sub_id;?>"> 
        <input type="hidden" name="quiz_number" value="<?php echo $number;?>"> 
        <input type="hidden" name="time_number" value="<?php echo $time_number;?>"> 

     <input type="submit" name="submit" id="submit" value="Create" class="btn btn-info"> 


     </form> 


     <a href="<? echo base_url()."/index.php/Tmcq_test";?>"> <button class="btn btn-info"> Exit </button> </a> 

     </div> 
    </div> 
</div> 

Теперь, как я могу добавить проверку формы в этом представлении с JavaScript я добавить JS код, но он не работает так, как я это реализовать? может кто угодно помочь

+0

J = нулю, так как ничего не присваивается $ номеру. также мы не можем проверить этот код, так как мы не можем запустить ваш php. вы должны опубликовать http://sscce.org/ пример – andrew

+0

$ номер вводится пользователем, как 2,3,4 и т. д., этот номер создает поле вопросов - @andrew – nadimsajib

ответ

0

Вы должны обновить назначение переменной. В вашем случае JS ищет элемент формы с именем «ques [i]», «opt1 [i]», «ans1 [i]» и т. Д. Но вам нужно сделать букву «i» переменной. Попробуйте это:

var qus1=document.forms["myForm1"]["ques[" + i + "]"].value; 
var opt1=document.forms["myForm1"]["opt1[" + i + "]"].value; 
var opt2=document.forms["myForm1"]["opt2[" + i + "]"].value; 
var opt3=document.forms["myForm1"]["opt3[" + i + "]"].value; 
var ans1=document.forms["myForm1"]["ans1[" + i + "]"].value;  

Это работает для меня: http://jsfiddle.net/kXwBr/1/

+0

спасибо, что его успешно работает - @ Mikec007 – nadimsajib