2011-12-21 70 views
5

Tôi cố gắng để sử dụng CakePHP HTML Linker cho đoạn mã sauCakePHP HTML liên kết

<li class="iAdd"><a href="add"><span>Add Cuisine</span></a></li> 

Kể từ thẻ span cần phải được bên trong một thẻ. không thể nhận được kết quả khi cần. Bất kỳ đề xuất về cách làm cho nó được thực hiện?

Trả lời

8

Vô hiệu hóa tùy chọn thoát trong mã liên kết của bạn, như vậy:

<li class="iAdd"> 
<?php echo $this->Html->link(
    '<span>Add Cuisine</span>', 
    array('action' => 'add'), 
    array('escape' => false) // This line will parse rather then output HTML 
); ?> 
</li> 
+0

cảm ơn. Các tác phẩm của nó trên phiên bản Cakephp 2.x cũng – Kushal

5

bạn luôn có thể sử dụng html bình thường trong các liên kết:

$this->Html->link('<span>'.h($text).'</span>', array('action'=>'add'), array('escape'=>false)); 
+0

lưu ý h() nếu bạn có kế hoạch đi qua đầu vào db vào liên kết của bạn sau đó cho mục đích bảo mật (nhiều lập trình viên quên rằng trong khi sử dụng escape => false) – mark

+0

nếu văn bản là tĩnh tôi có thể sử dụng nó trực tiếp? –

+1

chắc chắn - nếu bạn biết rằng nó không chứa bất kỳ ký tự html nào có thể làm hỏng bố cục của bạn (< > "...) – mark

Các vấn đề liên quan