url地址栏中的jquery代码

时间:2013-12-27 15:03:58

标签: jquery window.location

我有2个html <select>,我想使用选择列表中的值重定向到一个页面

我想要实现的是,如果我从两个选择列表中选择option1,将页面指向http://localhost/option-1/option-1,依此类推

我现在得到的是地址栏中的一大堆jquery所以我得到一个404这样的消息而不是我期望的

  

请求的URL /测试/功能(e){var   N,R,I,O =此[0]; {如果(的arguments.length)返回   I = b.isFunction(e)中,this.each(函数(N){风险   o,a = b(this); 1 === this.nodeType&amp;&amp;(o = i在此服务器上找不到

这里有一些测试代码,它不起作用或做我期望的

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
</head>
<body>

<select id="choose-type">
    <option value=" " selected="selected">Type</option>
    <option value="option-1">Option 1</option>
    <option value="option-2">Option 2</option>
    <option value="option-3">Option 3</option>
</select>

<select id="urlList">
    <option value=" " selected="selected">Subject</option>
    <option value="option-1">Option 1</option>
    <option value="option-2">Option 2</option>
    <option value="option-3">Option 3</option>
</select>

<input type="button" name="go" value=" " id="finder-button" />


<script type="text/javascript">
    $(document).ready(function() {
        $("#finder-button").click(function(e) {
            window.location.href = 'http://localhost/test/'+($("#choose-type").val)+'/'+($("#urlList").val);
            return false;
        });
    });
</script>
</body>
</html>

2 个答案:

答案 0 :(得分:2)

.val()是一个函数,您需要通过在其末尾添加()来调用它

window.location.href = 'http://localhost/test/' + $("#choose-type").val() + '/' + $("#urlList").val();

当你只使用.val时,它会返回对jQuery.fn.val函数的引用,然后它将用于字符串连接,这会将函数定义添加到字符串中。

答案 1 :(得分:1)

使用$("#choose-type").val();.val是在这种情况下输出其源的函数的名称。