我用yii框架構建表單。 前2個輸入是「first_name」和「last_name」,我有更多的輸入相同的形式。 我正在使用「ajaxSubmitButton」檢查驗證,並且我想首先檢查「first_name」和「last_name」是否通過了驗證,並且如果他們下一次當用戶提交它將檢查所有表單。YII框架形式ajax驗證只是輸入的一部分
型號 - >規則
array('first_name, last_name', 'length', 'min'=>2 , 'on' => 'setup'),
array('first_name, last_name , email, subject , message', 'length', 'min'=>2 , 'on' => 'submit'),
阿賈克斯按鈕查看 - >
<?php echo CHtml::ajaxSubmitButton('Submit',
CHtml::normalizeUrl(array('SubmitForm')),
array(
'error'=>'js:function(){
alert(\'error\');
}',
'beforeSend'=>'js:function(){
alert(\'beforeSend\');
}',
'success'=>'js:function(data){
alert(data);
}',
'complete'=>'js:function(){
// alert(\'complete\');
}',
'update'=>'#updatebox',
) ,array('id'=>'submit')
);
?>
控制器>
public function actionMessageForm()
{
$model = new Message;
if(isset($_POST['Message']))
{
$model->attributes=$_POST['Message'];
$valid = $model->validate('setup');
if($valid)
{
echo "pass";
$model->save();
}
else
{
echo "failed";
}
}
}
我如何檢查部分投入? 我在做什麼錯了?
我不確定我瞭解你。你需要驗證你的表單兩次 - 第一次只驗證「first_name」和「last_name」輸入,之後你做什麼? – temni 2012-04-02 03:23:32
我將驗證所有表單域。 – Dar 2012-04-02 05:51:02