我的html代码如下:
<a href="/patients/index" class="m-menu__link ">
<i class="m-menu__link-bullet m-menu__link-bullet--dot">
<span></span>
</i>
<span class="m-menu__link-text">
Add Medicines
</span>
</a>
我希望通过在cakephp 3中使用HtmlHelper来转换它。
答案 0 :(得分:1)
下面的代码,用于在cakephp 3
中的超链接中添加和标记<?php echo $this->Html->link(
$this->Html->tag("i", "<span></span>",array("class" => "m-menu__link-bullet m-menu__link-bullet--dot")).$this->Html->tag("span", "Add Medicine",
array("class" => "m-menu__link-text")),
["controller"=>"Medicines", "action"=>"index"],
["class"=>"m-menu__link",
"escape"=>false]
);
?>
答案 1 :(得分:1)
您想在'escape' => false
方法中使用link()
参数。这会阻止Cake逃避标记: -
<?= $this->Html->link(
'<i class="m-menu__link-bullet m-menu__link-bullet--dot"><span></span></i><span class="m-menu__link-text">' . h('Add Medicines') . '</span>',
'/patients/index',
[
'escape' => false,
'class' => 'm-menu__link'
]
) ?>
重要的是要记住仍然使用h()
转义任何用户生成的内容。我在上面的示例中通过转义“添加药物”显示了这一点,但如果这是硬编码的,则不需要将其包裹在h()
方法中。