我的页面中有一个时间选择器。为此,我使用了以下Yii小部件。我无法动态填充该值。
$this->widget('bootstrap.widgets.TbTimePicker',
array(
'model' =>$Visits,
'name' => "l_tme",
'id'=>"l_time_id",
'value' => $time_in_date,
'noAppend' => true,
'options' => array(
'disableFocus' => FALSE,
'showMeridian' => TRUE
),
'htmlOptions'=> array('class'=>'form-control','style'=>'width:90px;','id'=>'l_tme_add'),
)
);
遵循我使用的脚本代码。
var s_val = '12:34:00 AM';
document.getElementById('l_time_id').value = s_val;
我在页面加载时调用了上面的脚本。
但该值并未在该字段中填充。请帮帮我
答案 0 :(得分:0)
尝试从PHP端添加默认值:
'htmlOptions' => [
'value' => '12:34:00 AM',
...
]
答案 1 :(得分:0)
从id
移除htmlOptions
并保持小部件代码相同。
'htmlOptions'=> array('class'=>'form-control','style'=>'width:90px;'),
加载文档后,即document.ready()
,写相同的代码 -
var s_val = '12:34:00 AM';
document.getElementById('l_time_id').value = s_val;
该值将显示在时间选择器中。
答案 2 :(得分:0)
以这种方式设置时间选择器的值是不正确的
你必须按照文档
http://jdewit.github.io/bootstrap-timepicker/
$(' #timepicker')。timepicker(' setTime',' 12:45 AM');
您还必须确保在文档准备好之后才这样做
答案 3 :(得分:0)
尝试在您用于此表单的模型中设置值 而不是在窗口小部件本身中设置。
例如:
在你的控制器中:
$model = new YourActiveRecordModel();
$model->l_tme = date_format(new DateTime(),'Y-m-d H:i:s');
$this->render('your_view_file',array('model'=>$model));