实现fancybox onclick()

时间:2012-08-05 16:08:49

标签: php javascript fancybox

<?php
   echo '<td class="options-width">'.
        '<a href="edituser_lightbox.php?user_id=' . $row['user_id'] . ' " onclick:"  $.fancybox({ href:'example.jpg',title : 'Custom Title'});"title="Edit" class="icon-1 info-tooltip" </a>'.
        '<a href="deleteuser.php?user_id=' . $row['user_id'] . ' " class="icon-2 info-tooltip">   </a>'.
        '<a href="" title="Save" class="icon-5 info-tooltip">     </a>'.
        '</td>';


   echo "</tr>";
  }
?>

我必须至少在这附近?你能看到我想做什么吗?我不能改变我的CSS以包括fancybox :(

2 个答案:

答案 0 :(得分:1)

看起来像是一个错字:

onclick:"

使冒号等号:

onclick="

此外,通过添加引号确保对象的属性值为字符串。

onclick='$.fancybox({href: "'example.jpg'", title: "'Custom Title'"});'

答案 1 :(得分:1)

onclick属性应使用=指定,而不是:,如下所示:

echo '<a href="edituser_lightbox.php?user_id=' . $row['user_id'] . '" onclick="$.fancybox({ href:\'example.jpg\',title : \'Custom Title\'});" title="Edit" class="icon-1 info-tooltip" </a>';

在fancybox语句中,您还需要反斜杠 - 转义单引号,以便它们在输出HTML中显示为文字'。在"属性中的结束href=之前,您还有一个额外的空格。

将JavaScript内联放在标记内并不是一种好习惯。相反,最好将它绑定在:

$("a#editLink").click(function() {
   $.fancybox({ href:'example.jpg',title : 'Custom Title'});
});

注意,您需要将id="editLink"添加到<a>标记。 (它可以是任何id,或其他各种jQuery选择器,而不是id

echo '<a id="editLink" href="edituser_lightbox.php?user_id=' . $row['user_id'] . '" onclick="$.fancybox({ href:\'example.jpg\',title : \'Custom Title\'});" title="Edit" class="icon-1 info-tooltip" </a>';