在幾頁上,我需要包含一個窗口和一個提交按鈕。視圖文件使用DatePicker來允許用戶填寫輸入框。點擊「開始」(提交)按鈕後,我會根據日期更改以下內容。使用允許POST請求的表單創建窗口小部件
我目前正在嘗試使用小部件,因爲此代碼將用於多個頁面。我現在的問題是我想知道如何從窗體中獲取POST請求並使用它。我需要一個模型嗎?我將附上我目前的代碼,但現在我得到一個錯誤,$日期是未定義的。我知道它會給出一個錯誤,但我對我需要爲此做些什麼感到困惑。
爲插件當前代碼:
/protected/views/dateWidget.php
<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'date-form',
'enableAjaxValidation'=>false,
'enableClientValidation' => true,
)); ?>
<p class="note">
Fields with <span class="required">*</span> are required.
</p>
<?php echo $form->errorSummary($date); ?>
<div class="row">
<?php echo $form->labelEx($date,'date'); ?>
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
'model' => $model,
'attribute' => 'date',
'language' => 'ja',
'i18nScriptFile' => 'jquery.ui.datepicker-ja.js',
'options' => array(
'showOn' => 'both', // also opens with a button
'dateFormat' => 'yy-mm-dd', // format of "2012-12-25"
),
'htmlOptions' => array(
'size' => '10', // textField size
'maxlength' => '10', // textField maxlength
),
));
?>
<?php echo $form->error($date,'date'); ?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Add'); ?>
</div>
<?php $this->endWidget(); ?>
</div>
<!-- form -->
/protected/components/DateWidget.php
<?php
class DateWidget extends CWidget
{
/**
* @var CFormModel
*/
public $form;
public function run()
{
// if (! $this->form instanceof CFormModel) {
// throw new RuntimeException('No valid form available.');
// }
$this->render('application.views.dateWidget', array('form'=>$this->form));
}
}
?>
問題是:如何使用DateForm中的$ _POST來影響其他視圖/模型。