以下表格未提交。我错过了什么吗?
<?php
$form = $this->beginWidget('CActiveForm', array(
'id' => 'site-search-form',
'action' => Yii::app()->createAbsoluteUrl('/moduleA/actionB'), //array('/moduleA/actionB'),
'enableClientValidation' => true,
'enableAjaxValidation' => true,
'clientOptions' => array(
'validateOnSubmit' => true,
),
));
echo $form->hiddenField($model, 'is_a', array('id' => 'is_candidate'));
?>
<div class="blueline"></div>
<div class="row">
<?php echo $form->label($model, 'position_type'); ?>
<?php echo $form->error($model, 'position_type'); ?>
<?php
$arr = CHtml::listData(PositionType::model()->findAll(array('condition' => 'status=1', 'order' => 't.order')), 'id', 'name');
foreach ($arr as $k => $v) {
$arr[$k] = $v . ' Positions';
}
echo $form->dropDownList($model, 'position_type', $arr);
?>
<div class="clear-float"></div>
</div>
<div class="row">
<?php echo $form->label($model, 'location'); ?>
<?php echo $form->error($model, 'location'); ?>
<?php echo $form->dropDownList($model, 'location', CHtml::listData(CitySector::model()->findAll(), 'id', 'name')); ?>
<div class="clear-float"></div>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton(''); ?>
<div class="clear-float"></div>
</div>
<?php
$this->endWidget();
?>
答案 0 :(得分:2)
您很可能在未呈现的属性上出现验证错误。在这种情况下,您可以在某处临时添加<?php echo CHtml::errorSummary($model) ?>
以显示所有模型错误。
答案 1 :(得分:1)
从Yii Form Widget中删除 clientOptions
参数并尝试:
'clientOptions' => array(
'validateOnSubmit' => true,
),
答案 2 :(得分:1)
对于那些面临同样问题的人,但所选答案不起作用。确保您没有尝试实现AJAX搜索。 AJAX搜索将安装代码以防止表单提交,并将尝试异步提供数据。如果该代码失败或没有给出javascript错误而无法正常工作,那么您将陷入困境。要检查是否正在实现AJAX代码,请尝试在视图中查找此代码:
Yii::app()->clientScript->registerScript('search', "
...
$('.search-form form').submit(function(){
...
return false; //<-- here's the trouble
将行从return false更改为true将使其以非AJAX方式工作。