按钮内的符号图像



我正试图使用symfony1.4在按钮中包含一个图像,代码为:

<?php 
    echo button_to(image_tag('icon.png')."button_name",'url-goes-here');
?>

但我得到的结果不是我想要的,而是一个以"img src=path/to/icon.png button\uname"作为按钮值的按钮。我在谷歌上搜索了很长时间,什么也没找到,所以我会试着在这里询问。

换句话说:

我想找到一种方法来生成类似于:<button><img src=..>Text</button>的html,但在onclick选项中有一个符号url

我该如何用symfony将图像放入按钮中?我用错帮手了吗?感谢您抽出时间!

您错误地使用了Symfonys button_to函数。来自文件:

string button_to($name,$internal_uri,$options)创建指定名称的按钮标签,指向路由的URL

据我所知,button_to函数不允许使用图像按钮。相反,您可能会自己创建按钮标签,并使用symfonys路由来输出url。

我终于创建了自己的助手来显示这种按钮。我知道这不是很有效率和灵活性,但对我来说是有效的。这是代码

function image_button_to($img,$name,$uri,$options){
  $sfURL = url_for($uri);
  $sfIMG = image_tag($img);
  if(isset($options['confirm'])){
    $confirm_text = $options['confirm'];
    $jsFunction = 'if(confirm(''.$confirm_text.'')){ return window.location=''.$sfURL.'';}else{return false;}';
  }else{
    $jsFunction = 'window.location="'.$sfURL.'";';
  }
  $onclick = 'onclick="'.$jsFunction.'"';
  if(isset($options['title'])){
    $title = 'title=''.$options['title'].'' ';
  }else{
    $title = '';
  }
  if(isset($options['style'])){
    $style = 'style=''.$options['style'].'' ';
  }else{
    $style = '';
  }
return '<button type="button" '.$onclick.$title.$style.' >'.$sfIMG." ".$name.'</button>';
}

有了这个函数作为助手,在模板中我只需要:

<?php echo image_button_to('image.png',"button_name",'module/actionUri');?>

希望这对某人有用;)

最新更新