Javascript Cakephp 3.6.14:使datetime字段为只读
我在Javascript Cakephp 3.6.14:使datetime字段为只读,javascript,php,cakephp,datetimepicker,readonly,Javascript,Php,Cakephp,Datetimepicker,Readonly,我在CakePHP中有一个datetime控件,我正在尝试将其设置为只读(readonly属性适用于文本字段) 这就是我尝试过的: CakePHP-way: echo$this->Form->control('date_start',['empty'=>true,'readonly'=>'readonly']) 或 echo$this->Form->control('date_start',['empty'=>true,'readonly'=>true') JavaScript: $this->
CakePHP
中有一个datetime控件,我正在尝试将其设置为只读(readonly
属性适用于文本字段)
这就是我尝试过的:
CakePHP-way:
echo$this->Form->control('date_start',['empty'=>true,'readonly'=>'readonly'])代码>
或
echo$this->Form->control('date_start',['empty'=>true,'readonly'=>true')代码>
JavaScript:
$this->Html->scriptBlock(“document.getElementById('#datestart')。readonly=true;”代码>
echo$this->Form->control('date_start',['id'=>datestart','empty'=>true])代码>
但它们都不起作用。如何实现我想要的。您正在寻找禁用的属性:
注意,如果输入被禁用,则不会提交(见下文)
CakePHP:
echo $this->Form->control('date_start', ['empty' => true, 'disabled' => 'true']);
Jquery,获取或设置值(抱歉,我从未尝试使用vanilla Javascript):
如果输入被禁用,则不会提交。
也许这并不是你所期望的。
有关(许多)可能的解决方法,请参见此问题:
但如果禁用,该值将不会发布到控制器。。。对吗?我想保存这个值。例如,我加载已存储在数据库中的datetime值,用户可以看到该值,但无法更改它。用户可以编辑其他字段,然后保存更改
$( elem ).prop( "disabled" )
$( elem ).prop( "disabled", true )