CakePHP - 忽略具有名称属性

时间:2017-11-15 16:44:14

标签: php html cakephp cakephp-3.0

我有一个带有单选按钮的CakePHP表单,通过打开和关闭表单部分来增强前端。为了使单选按钮工作,我需要一个将它们绑定在一起的name属性。

但是,我的问题是CakePHP POST任何带有name属性的输入字段,因此上面的单选按钮在提交表单时会导致错误,因为我的模型中没有toggle-0字段。 / p>

有没有办法阻止CakePHP发布单选按钮值?我可以在前端或后端实现这一目标吗?

这似乎是一件非常简单的事情(就像在C#MVC中一样),但我似乎无法在Cake Cookbook上找到任何信息。

相关单选按钮:

<input id="toggle-on-0" class="selection-toggle selection-toggle-left" name="toggle-0" value="false" type="radio">
<label for="toggle-on-0" class="selection-btn">On</label>
<input id="toggle-off-0" class="selection-toggle selection-toggle-right" name="toggle-0" value="true" type="radio">
<label for="toggle-off-0" class="selection-btn">Off</label>

如果我能澄清问题或者您是否需要我的add()方法的代码,请告诉我。

1 个答案:

答案 0 :(得分:1)

这不是CakePHP问题。通过使用值和名称属性,您已制作了电台control successful。如HTML规范中所述,无线电输入现在将成为表单数据的一部分,并将在表单提交时发送给操作。

解决方案:

1:服务器端唯一的解决方案是从请求对象中删除无线电输入数据(如果存在)。

2:删除name属性并更改前端逻辑。

3:仅使用所需的POST数据发送AJAX请求。

相关问题