0

foreachを使用して学生が質問に答える必要があります(どの質問がデータベースから取得されるか)、すべての回答が満たされたときにjqueryに渡し、次にコントローラーに渡してデータベースに保存する必要があります。

<div>
    <tbody>
        <?php foreach ($questions as $question) { ?>
        <tr>
            <td ><?php echo $question['id']; ?></td>
            <td> <?php echo $question['question']; ?> </td>
            <td><input type='text' name='name' required="required" class="form-control" placeholder='Enter Your Answer'></td>
            // this is answer field associated with each question
        </tr>
        <?php } ?>  
    </tbody> 
</div>
<button class="btn btn-primary nextBtn btn-lg pull-right" id ="next" type="button" >Next</button>

学生がすべての回答を埋めると、これ(質問と回答)がjqueryに渡され、これがスクリプトになります

<script>
          $(document).ready(function($){
            $(".gg").click(function(){
            var array = $("input[name]").val();
            $.ajax({
          type: "POST",
          datatype:"json",
          url: BASE_URL+"student/info",
          data: 'data='+array,

          success: function(response) {


          }});

        return false;
    });  
});
        </script>    

学生が回答を提出すると、最初の回答のみがjquery関数に渡され、すべての回答を渡すことはできません

4

2 に答える 2

1

データが適切な形式ではありません

data: {'data=': array_variable },

すべてのフォームデータをより適切に送信したい場合は、それをシリアライズしてphp側に送信し、そこでシリアライズすることができます.Like:

data : $('#form').serialize()

シリアライズなしの ELSE

var textboxes = $('input[name="answer[]"]').val();
data : {'data':textboxes},
于 2015-01-07T11:35:11.467 に答える
0

入力テキストボックスの名前を動的に指定する必要があります

コード内

<div>
      <form name='question' id='question' >
        <tbody>
            <?php foreach ($questions as $question) { ?>
            <tr>
                <td ><?php echo $question['id']; ?></td>
                <td> <?php echo $question['question']; ?> </td>
                <td><input type='text' name='name[<?php echo $question["id"]; ?>]' required="required" class="form-control" placeholder='Enter Your Answer'></td>
                // this is answer field associated with each question
            </tr>
            <?php } ?>  
        </tbody> 
      </form>
    </div>
    <button class="btn btn-primary nextBtn btn-lg pull-right" id ="next" type="button" >Next</button>

スクリプト内

<script>
$(document).ready(function($){
$("#id").click(function(){
    $.ajax({
        type: "POST",
        url: BASE_URL+"student/info",
        data: $('#question').serialize(),

        success: function(response) {


        }});

        return false;
      });  
});     
</script>  
于 2015-01-07T12:24:13.610 に答える