是否可以在{{Form :: submit('')}}中放置一个bootstrap glyphicon - Laravel

时间:2013-12-23 15:02:03

标签: php forms twitter-bootstrap laravel

我想改变这个:

{{ Form::submit('Delete this User', array('class' => 'btn btn-warning')) }}

这样的事情:

{{ Form::submit('<i class="glyphicon glyphicon-delete"></i>', array('class' => '')) }}

我知道第二个选项不正确,有谁知道如何以正确的方式编写它?

4 个答案:

答案 0 :(得分:46)

使用提交类型<button>,这比提交输入更具灵活性:

{{Form::button('<i class="glyphicon glyphicon-delete"></i>', array('type' => 'submit', 'class' => ''))}}

为清楚起见,这是类方法:

public function button($value = null, $options = array())
{
   if ( ! array_key_exists('type', $options) )
   {
       $options['type'] = 'button';
   }

    return '<button'.$this->html->attributes($options).'>'.$value.'</button>';
}

正如您所看到的,$value包含您放在<button>标记内的任何内容,因此将图标放在那里应该可行 - 我使用Fontawesome图标并且它工作正常,我个人倾向于使用那些而不是Glyphicon,但原则保持不变。

相反,您使用Form::submit()创建的<input type="submit"无法接受html作为value属性的内容,这就是您的解决方案无效的原因。

答案 1 :(得分:3)

这对我有用

{{ Form::button('<span class="glyphicon glyphicon-remove"></span>', array('class'=>'btn btn-default', 'type'=>'submit')) }}

答案 2 :(得分:0)

我用Html::linkRoutes创建了一个按钮,无法实现你之前提到过的方法......任何人都有猜测吗?继承我的代码:

<div class="col-md-12">
          {{ Html::linkRoute('posts.index', '<< Back to blog', [], ['class' => 'btn2 btn2-default']) }}
</div>

答案 3 :(得分:0)

您可以将图标类添加到类数组中,如:

array('class' => 'btn btn-primary glyphicon glyphicon-remove');