我一直在研究并尝试学习完成此任务的正确方法。我已经完成了以下操作,但我的表格仍然没有任何变化。无论如何,看看是否正在进行ajax调用?任何人都可以更正此代码以弄清楚为什么我的表单中的字段没有任何更改。
在我的模型中,我具有以下功能
public function standardRate($country)
{
$country_std_rate = Yii::app()->db->createCommand()
->select('AVG(rate_syr_mh)')
->from('packaging_metrics')
->where(array('like', 'country', '%'.$country.'%'))
->queryRow();
echo CJSON::encode($country_std_rate);
}
在我的控制器中,我添加了此功能,并将“countryRate”添加到我的所有人的访问控制中
public function countryRate()
{
$input_country = $_POST['country'];
$model = PackagingMetric::model()->standardRate($input_country);
echo CJSON::encode($model);
Yii::app()->end();
$this->render('countryRate',array(
'model'=>$model,
));
}
这是我的表单中的 Jquery 调用
$('#PackagingMetric_std_rate').live('click',function()
{
var country = $('#country').val();
$.ajax({
type: 'POST',
url: 'PackagingMetric/countryRate',
data: {country:country},
success: function(data)
{
$('#PackagingMetric_std_rate').html(data);
}
});
});
但是,我的表单上没有任何值改变,我正在使用 Yii-Debug-toolbar 并且在单击表单上的相应字段时没有看到任何 POST 调用或任何 sql 查询。