html - CakePHP 隐藏_方法 POST

标签 html cakephp

当使用 FormHelper->create(...) 时,呈现的 HTML 如下所示:

<form action="/blogs/add" method="post" accept-charset="utf-8">
    <div style="display:none;">
        <input type="hidden" name="_method" value="POST">
    </div>

    <!-- omitted: form inputs -->
</form>

为什么显示的那个div是:none;风格在那里?如何让它不显示?

更新:澄清一下,我想知道为什么 div 和 div 中隐藏的输入都出现了。它们似乎不是必需的,因此我不希望它们存在。

最佳答案

对于最近来到这里的任何人,现在有一个不涉及自定义帮助程序的简单解决方案。使用 FormHelper templates ,有问题的代码块是由“hiddenBlock”模板生成的。 (在此处查看默认模板的完整列表:https://api.cakephp.org/3.2/class-Cake.View.Helper.FormHelper.html#%24_defaultConfig)。

因此,修改 CakePHP 文档中给出的示例以匹配这种情况并删除包装 <div>周围隐藏<input>对于 _method(假设 HTML5):

// In your View class
$this->loadHelper( 'Form' , [ 'templates' => 'app_form' ] );


// in config/app_form.php
return [
    'hiddenBlock' => '{{ content }}'
];

我遇到了这个问题,因为我最近实现了一个不允许内联样式的内容安全策略,我想我应该分享我的工作解决方案。

关于html - CakePHP 隐藏_方法 POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11571584/

相关文章:

jquery - 从 iPhone 主屏幕重新打开时,如何在 jQuery Mobile 应用程序上缓存和保留上次访问的页面?

php - Cakephp 表单助手

php - cakephp 单元类 * 缺失

javascript - 如何创建可搜索的按钮列表?

html - 用于 HTML 单选按钮的 CSS

cakephp - 在 cakephp 下拉菜单中添加默认选项 "Please Select"

cakephp - 如何将div添加到单选按钮?

php - 深度加入Cakephp

javascript - html5 输入字段填充问题

javascript - 如何在 ul 中禁用或添加特定类?