CJuiSliderInput 显示一滑动条,它也封装了 JUI slider插件,可以用在Form中作为用户输入UI组件。
基本用法如下:
- <div class="form">
- <?php $form=$this->beginWidget('CActiveForm'); ?>
- <?php echo $form->errorSummary($model); ?>
- <?php $this->widget('zii.widgets.jui.CJuiSliderInput', array(
- 'model'=>$model,
- 'attribute'=>'size',
- 'name'=>'my_slider',
- 'value'=>50,
- 'event'=>'change',
- 'options'=>array(
- 'min'=>0,
- 'max'=>100,
- 'slide'=>'js:function(event,ui){$("#amount").text(ui.value);}',
- ),
- 'htmlOptions'=>array(
- 'style'=>'width:200px; float:left;'
- ),
- )); ?>
- <div id="amount" style="margin-left:215px;">50</div>
- <div class="row submit">
- <?php echo CHtml::submitButton('Submit'); ?>
- </div>
- <?php $this->endWidget(); ?>
- </div><!-- form -->
<div class="form">
<?php $form=$this->beginWidget('CActiveForm'); ?>
<?php echo $form->errorSummary($model); ?>
<?php $this->widget('zii.widgets.jui.CJuiSliderInput', array(
'model'=>$model,
'attribute'=>'size',
'name'=>'my_slider',
'value'=>50,
'event'=>'change',
'options'=>array(
'min'=>0,
'max'=>100,
'slide'=>'js:function(event,ui){$("#amount").text(ui.value);}',
),
'htmlOptions'=>array(
'style'=>'width:200px; float:left;'
),
)); ?>
<div id="amount" style="margin-left:215px;">50</div>
<div class="row submit">
<?php echo CHtml::submitButton('Submit'); ?>
</div>
<?php $this->endWidget(); ?>
</div><!-- form -->
用户提交后,使用result.php来显示用户输入的值,这里定义DataModel如下:
- class DataModel extends CFormModel
- {
- public $size;
- public function rules()
- {
- return array(
- array('size', 'safe'),
- );
- }
- }
class DataModel extends CFormModel
{
public $size;
public function rules()
{
return array(
array('size', 'safe'),
);
}
}
修改SiteController的indexAction方法:
- public function actionIndex()
- {
- $model=new DataModel();
- $model->size=50;
- if(!empty($_POST['DataModel']))
- {
- $model->attributes=$_POST['DataModel'];
- if($model->validate())
- {
- $this->render('result', array(
- 'model' => $model,
- ));
- return;
- }
- }
- $this->render('index', array(
- 'model' => $model,
- ));
- }
public function actionIndex()
{
$model=new DataModel();
$model->size=50;
if(!empty($_POST['DataModel']))
{
$model->attributes=$_POST['DataModel'];
if($model->validate())
{
$this->render('result', array(
'model' => $model,
));
return;
}
}
$this->render('index', array(
'model' => $model,
));
}
本例
下载
本文介绍了如何在Web应用中利用CJuiSliderInput组件实现滑动条作为用户输入界面,并通过PHP代码示例展示了基本用法。用户提交后,数据会通过result.php页面进行展示,同时提供了DataModel类用于数据验证和存储。

被折叠的 条评论
为什么被折叠?



