如何提交禁用表单字段的值?
How to submit the value of a disabled form field?
这个页面实际上是一个用户无法更改任何内容的预览,他已经给出 before.I 已经尝试了下面的代码,
echo $this->Form->input('exchange_type', array(
'disabled' => 'disabled',
'empty' => '--Please Select--',
'options' => array(
'6' => 'POINT_TO_PRODUCT',
'7' => 'POINT_TO_GIFT',
'2' => 'POINT_TO_GAME'
)
));
此处字段已禁用,但它正在向 database.I 发送空值 我正在尝试发送用户已经使用过的实际值 selected.How 我可以这样做吗?
这就是 HTML 的工作方式,禁用元素的值不会被发送。
你可以做的是使用隐藏字段,这是表单助手在使用例如复选框时自动执行的操作,以确保始终发送一个值,因为未选中的复选框不会提交任何值,只是像禁用输入。
隐藏字段应该与实际字段同名,并且应该放在之前实际字段,这样隐藏值只会在以下情况下发送以下元素已禁用。
echo $this->Form->hidden('exchange_type');
echo $this->Form->input('exchange_type', array(
'disabled' => true,
// ...
));
这将为隐藏输入和 select 输入获取先前发布的值,并且隐藏输入将是可提交的。
这个页面实际上是一个用户无法更改任何内容的预览,他已经给出 before.I 已经尝试了下面的代码,
echo $this->Form->input('exchange_type', array(
'disabled' => 'disabled',
'empty' => '--Please Select--',
'options' => array(
'6' => 'POINT_TO_PRODUCT',
'7' => 'POINT_TO_GIFT',
'2' => 'POINT_TO_GAME'
)
));
此处字段已禁用,但它正在向 database.I 发送空值 我正在尝试发送用户已经使用过的实际值 selected.How 我可以这样做吗?
这就是 HTML 的工作方式,禁用元素的值不会被发送。
你可以做的是使用隐藏字段,这是表单助手在使用例如复选框时自动执行的操作,以确保始终发送一个值,因为未选中的复选框不会提交任何值,只是像禁用输入。
隐藏字段应该与实际字段同名,并且应该放在之前实际字段,这样隐藏值只会在以下情况下发送以下元素已禁用。
echo $this->Form->hidden('exchange_type');
echo $this->Form->input('exchange_type', array(
'disabled' => true,
// ...
));
这将为隐藏输入和 select 输入获取先前发布的值,并且隐藏输入将是可提交的。