0

我用 onload 选项(ajax,页面加载)填充我的选择框,效果很好

<select name="variety" id="resorts"><option value="">Select </option></select> 

要触发选定的选项(转到 Url),我使用以下功能。

("body").delegate("#resorts","change", function(e){ 
    window.location='http://skiweather.eu/webcams/' + $(this).children("option:selected").attr("value");
    return false;
});

它似乎不起作用,它返回“未定义”。怎么了。

也许填充功能?

function populate_cantons(){$.getJSON("http://skiweather.eu/v3/ajax/fetch_canton.php",{country:$("#country").val()},function(a){var b=$("#cantons");var c=b.prop("options");$("option",b).remove();$.each(a,function(a,b){c[c.length]=new Option(b["canton"])});b.prepend("<option selected>Select region</option>")})}

http://skiweather.eu/latest/(页面右上角的选择框。

4

2 回答 2

1
$(this).children("option:selected").attr("value");

您尝试读取value属性,但您的option元素没有这样的属性。要么添加它,要么阅读option元素的文本。

于 2013-04-22T14:51:46.953 回答
0

尝试:

$("body").delegate("change", "#resorts", function(e){ 
   window.location='http://skiweather.eu/webcams/' + $(this).val();
   return false;
});
于 2013-04-22T13:41:49.117 回答