1

我尝试重新设置 的样式select option,但是该选项的值不会传递给 jQuery 创建的新类。因此,我无法得到正确的结果。正确的结果是当我单击美国时,它显示奥斯汀,当单击德国时显示柏林

这是代码, http://jsfiddle.net/xvDbv/1/

应该改为类似

   text: $this.children('option','value').eq(i).text()?

有人可以帮助解决VALUE通行证问题吗?

非常感谢 adv

4

2 回答 2

2

countrySelectChanged这是因为您在构建伪选择时从不调用该函数。在函数中添加对它的调用:

$listItems.click(function(e) {
    e.stopPropagation();
    $styledSelect.text($(this).text()).removeClass('active');
    $this.val($(this).attr('rel'));
    $list.hide(); /* alert($this.val()); Uncomment this for demonstration! */
    countrySelectChanged();
});

jsFiddle 示例

于 2012-09-26T02:34:59.170 回答
1

我将on侦听器添加到li.

    $('<li />', {
        text: $this.children('option').eq(i).text(),
        rel: $this.children('option').eq(i).val()
    }).on("click", function(){
        $(".hide").hide();
        $("#" + $(this).text().toLowerCase() + "-select").show();
    }).appendTo($list);

jsFiddle

于 2012-09-26T02:46:19.760 回答