如何使用lightbox2模块禁用在Drupal中打开的灯箱

时间:2013-08-09 17:17:24

标签: drupal drupal-7 drupal-modules lightbox2

我目前有一个下拉导航,可以打开一个模态灯箱窗口。

如果选择了没有选择URL的选项,我希望不打开窗口,这是第一个默认选项。

我尝试了很多技巧,例如: - 在表单的onsubmit事件上返回false。 - 尝试使用jQuery将click事件绑定到goURL a href链接 1)调用event.preventDefault或2)停止传播事件。 - 将onclick事件编码为goURL a href链接。

以下是html代码

<h3>Request a <span>Quote</span></h3>
<form action="#">
    <div class="select">
        <select id="URL" name="URL" onchange="$('#goLink').attr('href', $('#URL').val());">
            <option value="">- Choose a Link -</option>
            <option value="/node/1/lightbox2">Link 1</option>
            <option value="/node/2/lightbox2">Link 2</option>
            <option value="/node/3/lightbox2">Link 3</option>
            <option value="/node/4/lightbox2">Link 4</option>
            <option class="last" value="/node/5/lightbox2">Link 5</option>
        </select>
    </div>
</form>
<a href="#" id="goLink" class="go" rel="lightframe">GO</a>

1 个答案:

答案 0 :(得分:1)

如果您需要一个没有灯箱效果的简单链接,则必须删除 rel 属性。 href属性不会影响它。

以下是jQuery代码的示例(不一定是完美的代码,但仅作为示例):

$("#url").change(function(){
    var selected = $('url :selected'), // Get the selected option
        selectedVal = selected.val(); // Get the selected option value

    if (selectedValue == "") {
        $('#goLink').removeAttr('rel'); // Remove the rel if the value is empty
    } else {
        $("#goLink").attr('href',selectedVal).attr('rel','lightframe'); // Add rel=lightframe attribute and the href
    }
});