2

我正在尝试将我从表单中检索到的一些数据发布到控制器。这是我的表格:

<div id="time_registration" class="toogle_form" diplay="none">
<form id="hourForm" name="hourForm"  >
//first part of the form -----

//第二部分:

    <div id="hoursDetails" class="toogle_form" style="display:none"> 
        <table border=0>
                        <?php
                           for ($i=0 ; $i<3; $i++){
                   echo '<tr>
                      <td><div id="date'.$i.'" name="date'.$i.'" ></div></td>   
                      <input type=hidden id="date'.$i.'" name="date'.$i.'" value=""/>

                      <td>
                      <input type=text name="action'.$i.'"  placeholder="Votre action" value=""/>
                      <input type="text" name="temps'.$i.'"  placeholder="nombre heures" value=""/>
                      </td>
                  </tr> ';}
                echo '  <input type=hidden id="dateTest" name="dateTest" value=""/>  '; // just to test  
                  ?>
                  </table>
    </div> 
  </form>
</div>

Firebug 显示 date0、date1 和 date2 为空,但 dateTest 不是。

这是我设置变量的方式( js 函数)

         for (var i = 0; i < 3; i++) {

              $('#date'+i).html('myVariable');
              $('#date'+i).val('myVariable');
                 }
              $('#dateTest').val('dateTest');

这是我将数据发布到控制器的方式:

function insert_hour() {
         var form_values= $('#hourForm').serialize();
         alert($('#date0').val());// prints the correct value also for date1 and date2

         $.ajax({
            type:'POST',
                url : '<?php echo site_url()."/path/to/controller/"; ?>',
            data : form_values,

            success:function(data)
                {   alert(' ajax_call ok ');
                }

            });     


}
4

1 回答 1

0

我认为你在这里做错了

<div id="date'.$i.'" name="date'.$i.'" >

      and

<input type=hidden id="date'.$i.'" name="date'.$i.'" value=""/>

在这种情况下$('#date'+i).html('myVariable'); Will not work

您使用的是相同的 id。Id 必须是唯一的。

于 2012-10-12T15:04:49.750 回答