Javascript Yii-在鼠标上方调用ajax并获取数据
索引文件Javascript Yii-在鼠标上方调用ajax并获取数据,javascript,php,ajax,yii,Javascript,Php,Ajax,Yii,索引文件 <h4>Dates</h4> <?php foreach($dates as $date){ echo TbHtml::ajaxButton(date("D, d M" ,strtotime($date->date)), array(
<h4>Dates</h4>
<?php
foreach($dates as $date){
echo TbHtml::ajaxButton(date("D, d M" ,strtotime($date->date)),
array(
'matches/countryVenue'
),
array(
// 'dataType'=>'json',
'type'=>'POST',
'data'=>array('id'=>$date->id),
'success'=>'js: function(data) {
alert(data);
}',
'failure'=>'js: function(data) {
alert("error");
}',
),
array(
"id"=>$date->id,
"onmouseover"=>"date(this.id);"
)
);
echo "<br>";
}
?>
</div>
<script>
function date(x){
//alert("Date " + x);
};
</script>
我的问题
我需要有人帮助我准确地了解回调和ajax
此外,我计划做的是onmouseover
的ajaxButton
,我想做一个ajax调用,将按钮的ID发送到控制器,并从控制器返回json数据并转换为php数组
编辑信息
我已成功地将数据从控制器发送到索引文件,但无法在php中呈现json数据。@再次感谢。您调试了它吗?我看到了一些问题:如果$id没有收到怎么办?如果没有场地怎么办?什么是日期格式?如果您回答我这个问题,我可以提供一个解决方案。@Skatox
$id
被控制器接收并运行查询$CountryVincement
是获取记录的数据提供程序,它在触发查询时确实接收数据。仅出于显示目的,日期格式几乎不相关。我不知道如何CJSON解码
并将其从js代码转换为php数组。我不明白你所说的CJSON解码是什么意思,你不需要在js代码处解码,你会收到对象数据。countryVenue
public function actionCountryVenue(){
if(isset($_POST['id'])){
$id = $_POST['id'];
}
// echo $id;
$criteria = new CDbCriteria();
$criteria->select = "*";
$criteria->condition = "DATE = ".$id;
$countryVenue = Matches::model()->findAll($criteria);
if(!empty($countryVenue)){
echo CJSON::encode(array('countryVenue'=>$countryVenue));
}
}