我是jQuery和Codeigniter的新手。我正在尝试的是获取控制器函数的post值,这是我从jQuery serialize()
得到的,但我收到错误说未定义的变量。如何获得签到和结账控制器的价值?这是我的代码......
这是观点:
//$key i'm passing here is an array
<input name ="checkin<?php echo $key;?>" type="textbox" class="TextBox1" value="<?php echo $in; ?>"/>
<input name ="checkout<?php echo $k;?>" type="textbox" class="TextBox2" value="<?php echo $out; ?>"/>
<script>
$("input").blur(function () {
var form_data = $("#employee_2").find('input').serialize();
$.ajax({
url: "<?php echo site_url(" HomeController / calculate_time_lap "); ?>",
type: 'POST',
data: form_data,
success: function (result) {
alert(result);
//$('input').closest('tr').find('.TextBox3').val(result);
}
});
return false;
});
</script>
控制器
我得到的$value
是空的....
public function calculate_time_lap() {
$formate = "%h:%i";
$checkin['val'] = $this->input->post('checkin');
//is my post 'checkin' here is null...
foreach ($val as $value)
{
echo $value;
}
}
答案 0 :(得分:0)
试试这个 HTML:
<input name ="checkin" type="textbox" class="TextBox1" value="<?php echo $in; ?>"/>
<input name ="checkout" type="textbox" class="TextBox2" value="<?php echo $out; ?>"/>
你必须在你在html中使用的控制器中使用相同的名称。
我认为您使用了=&gt;
name ="checkin<?php echo $key;?>
在html中,但仅使用$ this-&gt; input-&gt; post('checkin')进行调用。 所以你没有得到任何东西。 if $ key = 1控制器中的呼叫,如$ this-&gt; input-&gt; post('checkin1')