【问题标题】:Laravel forms - array of same fieldLaravel 表单 - 相同字段的数组
【发布时间】:2014-12-28 15:49:21
【问题描述】:

我正在尝试复制这个逻辑:

insert multiple fields using foreach loop - 使用 laravel 4 和刀片。

我试过了:

<div>
    {{ Form::select('linkType[]', array('Facebook', 'Twitter','Other')) }}
    {{ Form::text('linkUrl[]') }}<br>
    {{ Form::select('linkType[]', array('Facebook', 'Twitter','Other')) }}
    {{ Form::text('linkUrl[]') }}
    ...
</div>

但这给了我这个 laravel 错误:

错误异常 (E_UNKNOWN) htmlentities() 期望参数 1 是字符串,给定数组(视图:...)

知道如何解决这个问题吗? 谢谢


更新

其中一些作品:{{ Form::text('linkurl[]') }} 所以这是应该写的。
其中一些也有效:

<select name="linktype[]"/>
    <option value="facebook">Facebook</option>
    <option value="twitter">Twitter</option>
</select>

所以问题在以下方面是 99% 确定的:

{{ Form::select('linkType[]', array('Facebook', 'Twitter','Other')) }}

我做错了什么?

【问题讨论】:

  • 你使用的是哪个 Laravel 版本?您能否发布完整的堆栈跟踪,并在您创建表单的位置更喜欢您的整个视图?
  • Laravel 4 宅基地 - 我不知道怎么做,但经过几个小时的测试和评论后,它突然开始使用开篇文章中的代码。唯一改变的是我删除了一个标签......我将回答我的问题并将我的完整代码发布为教育材料。

标签: php arrays forms laravel blade


【解决方案1】:

为我工作...

<!doctype html>
<html lang="en">
<body>
    <div>
        {{ Form::select('linkType[]', ['Facebook', 'Twitter','Other']) }}
    </div>
</body>
</html>

生成:

【讨论】:

  • 正如开篇文章中所评论的那样。经过数小时的尝试调试原始代码开始工作。 (我确实删除了选择的标签。)但我刚刚发现 ->withInput() 正在杀死它,它无法返回 input[] 数组。而且我认为我已经为“linkType []”设置了标签,这可能是问题所在。解决方案是设置 withInput(Input::except('linkUrl','linkType')) 这样它就不会返回用户提交的链接。将在本周晚些时候全面回答并输入调查结果。
猜你喜欢
  • 1970-01-01
  • 2012-07-27
  • 2018-12-08
  • 2013-08-12
  • 2019-05-17
  • 1970-01-01
  • 2015-05-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多