我试图过滤cakephp中的记录表单数据库。我正在使用ajax post方法在同一页面上获取详细信息。但是错误缺少视图文件。这是我的控制器。
public function userfunddetails(){
$this->autoLayout = false;
$userid = $this->request->data('userid');
$startdate = $this->request->data('startdate');
$startdate = date('Y-m-d', strtotime($startdate));
$enddate = $this->request->data('enddate');
$enddate = date('Y-m-d', strtotime($enddate));
$conditions = array(
array('Recharge.add_date >= ' => $startdate, 'Recharge.add_date <=' => $enddate),
'Recharge.user_id =' => $userid
);
$data = $this->Recharge->find('all',array('conditions'=>$conditions));
$this->set('data', $data);
}
这是我的ajax代码。同样的事情与其他功能一起工作。 我不知道会发生什么,但是相同的代码可用于其他模块。
<script>
$(document).ready(function(){
$('#frm_rechargeHistory_process').submit(function(){
var userid = $("#userid").val();
var startdate = $("#startdate").val();
//alert(startdate);
// var startdate = new Date($('#startdate').val());
//var startdate = $("#startdate").datepicker({ dateFormat: 'yyyy-mm-dd' }).val();
// var enddate = $("#enddate").val(); // Call ajax for pass data to other place
//var enddate = new Date($('#enddate').val());
var enddate = $("#enddate").datepicker({ dateFormat: 'yyyy-mm-dd' }).val();
// alert(enddate);
var dataString = 'userid='+ userid + '&startdate='+ startdate + '&enddate='+ enddate;
if(userid==''||startdate==''||enddate=='')
{
alert("Please Fill All Fields");
}else
{
// AJAX Code To Submit Form.
$.ajax({
type: "POST",
url: "userfunddetails",
data: dataString,
cache: false,
success: function(result){
//alert(result);
$('#txtHint').html(result);
}
});
}
return false;
});
});
</script>
答案 0 :(得分:0)
您的Ajax调用在您的函数命名为“ userfunddetails”时查找URL“ userHistorydetails”。
还,您不应该使用“ / controller / userfunddetails”作为URL吗?
答案 1 :(得分:0)
请检查是否对您有帮助。
在这种情况下,有两种选择:
首先,您可以在此处创建ctp文件:YOURCONROLLER / userfunddetails.ctp并使用$ data数组。
OR
第二,您可以将json_encode()放在如下所示的控制器函数中,并将die()放在函数末尾。
<?php echo json_encode(array('data' => $data)); die; ?>
您可以在jquery响应中找到$ data数组。