私はこれを達成するための適切な方法を研究し、学ぼうとしています。私は次のことを行いましたが、フォームに変更はありません。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 クエリが表示されません。