如何使用javascript两个下拉菜单选项进行页面重定向

时间:2012-11-02 18:07:12

标签: javascript redirect drop-down-menu

我是JavaScript的初学者,感谢您对我的问题的帮助。

我需要有两个下拉菜单,每个菜单都有URL值,选中后会一起追加并在点击提交按钮后重定向到选定的网址。

它类似于类似文章中的实例:http://www.jsfiddle.net/Yxw7k/13

如果第一个下拉列表中第二个选项的值为:/a/something1,第二个下拉列表中第三个选项的值为/3/index.html,则在点击提交后被重定向到www.somesite.com/a/something1/3/index.html 我希望在不使用jQuery的情况下实现这一目标。我如何使用常规JS来实现这一目标?

2 个答案:

答案 0 :(得分:0)

我建议如下:

function makePath(directory, file, domain) {
    if (!directory || !file) {
        return false;
    }
    else {
        directory = directory.nodeType == 1 ? directory.value : document.getElementById(directory).value;
        file = file.nodeType == 1 ? file.value : document.getElementById(file).value;
        return newURL = [domain || 'http://' + location.hostname, directory, file].join('/');
    }
}

document.getElementById('fileName').onblur = function(){
    // using console.log() in the demo
    document.location = makePath('directoryPath', this, 'http://example.com');
}

JS Fiddle demo

以上内容与以下HTML一起使用:

<select id="directoryPath">
    <option>directoryA</option>
    <option>directoryB</option>
    <option>directoryC</option>
</select>


<select id="fileName">
    <option>file1.html</option>
    <option>file2.html</option>
    <option>file3.html</option>
</select>

答案 1 :(得分:0)

使用jquery更容易选择值,您可以创建一个检测所选值的函数,然后在用户按下提交按钮时更新重定向链接。因此,您需要将该函数添加到按钮的onclick事件中。