1

我有一个无序列表,它正在使用 jQuery 转换为选择列表。我正在使用的代码粘贴在下面:

$("<select />").appendTo(".region .links");
// Create default option "Go to..."
$("<option />", {
    "selected": "selected",
        "value": "",
        "text": "Links"
}).appendTo(".links select");
$(".links .menu li a").each(function () {
    var el = $(this);
    $("<option />", {
        "value": el.attr("href"),
            "text": el.text()
    }).appendTo(".region select");
});
$(".region select").change(function () {
    window.location = $(this).find("option:selected").val();
});

然后此代码生成以下内容:

<select>
<option selected="selected" value="">Links</option>
<option value="http://www.linkvalue.com">Link1</option>
<option value="http://www.linkvalue2.com">Link2</option>
</select>

我需要更改 javascript,以便所有链接在新窗口中打开。我该怎么办?

4

3 回答 3

0

为此更改 window.location :

window.open(
    $(this).find("option:selected").val(),
    '_blank'
);

我没有测试,从这个问题中得到答案:JavaScript: location.href to open in new window/tab?

于 2013-04-29T16:04:37.297 回答
0

你应该使用

window.open('url', 'window name', 'window settings');

代替

window.location

它指的是当前窗口

于 2013-04-29T16:04:41.227 回答
0

尝试

$(".region select").change(function () {
    window.open(
        this.value,
        '_blank' // <- This is what makes it open in a new window.
     );
});
于 2013-04-29T16:03:42.800 回答