【问题标题】:Getting raw HTML Textarea within other rextarea (laravel 5.3)在其他文本区域中获取原始 HTML 文本区域(laravel 5.3)
【发布时间】:2017-05-12 15:20:05
【问题描述】:

我从控制器获取原始 html 并将其放入 textarea。有不同类型的字段,如 文本选择,也可以是 textarea,它们将在文本框中作为原始 html 打印。它适用于除 textarea 以外的所有字段。

当有一个包含 textarea 类型的字段时,按钮下方的字符串代码不会出现在文本框中,并且 textarea 类型的代码会显示,但 没有结束标记为

这是我的代码。

 foreach($fields as $field){
    $type = $field->type;
switch($type) {
   case 'textarea':
    $str .=    '<div class="form-group">
                    <label class="control-label col-md-3">'.$custom_field->name.'
                    </label>
                    <div class="col-md-8">
                        <div class="input-icon right">
                            <i class="fa"></i>
                            <textarea name="'.$field->id.'" class="form-control" rows="8"></textarea>
                        </div>
                    </div>
                </div>';
            break;
      }
}

现在一切正常,除了包含 textarea 类型。 问题是如果有 textarea 类型,那么下面的按钮不会出现,也不会出现 textarea 的结束标签

html 输出的这一端就像没有按钮刺痛和没有 endtag 一样

`<div class="form-group">
                        <label class="control-label col-md-3">Description
                        </label>
                        <div class="col-md-8">
                            <div class="input-icon right">
                                <i class="fa"></i>
                                <textarea name="17" class="form-control" rows="8">`

请帮忙看看哪里出错了

【问题讨论】:

  • 你检查过它生成的 HTML 吗?查看页面的源代码并显示它在该文本区域字段周围生成的内容。
  • 哦 - 在控制器中生成 HTML 的想法是完全错误的!这是控制器,HTML 应该在视图中 - 这就是为什么它们被称为,不仅仅是为了方便。
  • 是的 html 正在生成,我得到了表单和原始 html。表单看起来很好,但在原始 html @NigelRen 中出现问题
  • @bluemoon 试试这个:stackoverflow.com/a/1638832/4771277
  • @bluemoon 是的,但我认为这是个问题。它通过在原始代码中使用 来结束父文本区域。如果您使用输入或选择,它不会结束父文本区域。但是如果你使用编码字符,它不应该结束它。看:jsfiddle.net/dfjkwzye

标签: php html laravel


【解决方案1】:

您只需将&amp;lt; 替换为&amp;lt; 并将&amp;gt; 替换为&amp;gt;

其他一切正常。

只需将您的案例编辑为:

case 'textarea':
$str .=    '<div class="form-group">
                <label class="control-label col-md-3">'.$custom_field->name.'
                </label>
                <div class="col-md-8">
                    <div class="input-icon right">
                        <i class="fa"></i>
                        <textarea name="'.$field->id.'" class="form-control" rows="8">&lt;/textarea&gt;
                    </div>
                </div>
            </div>';
        break;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-04
    • 1970-01-01
    • 1970-01-01
    • 2012-02-14
    相关资源
    最近更新 更多