0

我有这个选择标签:

<div class="browse_by">
     <select id="dynamic_select">  
            <option selected="selected">Browse by Category</option>
    </select>
</div>

jQuery代码:

$('#dynamic_select').bind('change', function() {
    var url = $(this).val();
    if (url) {
        window.location = "/gallery/" + url;
    }
    return false;
});

问题是当我为此 Select 元素使用自定义 jQuery 下拉菜单时,jQuery 代码停止工作。我尝试了 jqtransform 和 dropkick。

在 jqtransform 和 dropkick 之前使用它通常工作正常,但在它们之后它停止工作,没有 url 重定向。

有什么帮助吗?

4

3 回答 3

1

因此,您使用的是 Dropkick.js,它基本上将您的select标签重写为自定义小部件。您需要重新附加事件处理程序。

如果您访问Dropkick 站点,请阅读自定义“更改”回调部分。

你需要做类似的事情

$('#dynamic_select').dropkick({
  change: function (value, label) {
    var url = value;
    if (url) {
       window.location = "/gallery/" + url;
    }
  }
});
于 2012-08-02T17:15:50.397 回答
0

只是一个问题....您的选项元素没有 VALUE 属性...

<option selected="selected">Browse by Category</option>

由于没有value定义属性

var url = $(this).val(); 将失败...

因此,您window.location将设置为"/gallery/undefined"

让它像

<option selected="selected" value="somePage.html">Browse by Category</option>

它会正常工作:)

于 2012-08-02T17:10:26.510 回答
0

您可以尝试使用我的库http://www.pkoretic.net/csTransPie/ 它不会更改选择标签,只会对其应用样式。它甚至可以在手机上本地运行。

于 2012-08-04T17:40:11.610 回答