javascript - 在 MVC3 上使用 javascript 重定向的奇怪行为

标签 javascript asp.net-mvc-3 redirect

我有一个像这样的select:

<select id="Link" name="Link"><option value="">Link Websites</option>
<option value="www.google.com">test link</option>
</select>

当用户选择 test link 选项时,我想重定向到 www.google.com。这是我使用的js:

$("body").on("change", ".site > select", function () {
        if ($(this).selectedIndex != 0) {
            window.location.replace($(this).val());
        }        
    });

但我没有重定向到 www.google.com,而是得到了类似 localhost:8000/www.google.com 的内容。这与 MVC3 上的 URL filter 有什么关系吗?或者我遗漏了什么?

最佳答案

您需要在 url 的选项值中提供协议(protocol):

<option value="http://www.google.com">test link</option>

否则,它将被视为路径名(相对 url)并附加到当前 url。

参见文档 here

关于javascript - 在 MVC3 上使用 javascript 重定向的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17079484/

相关文章:

php - Htaccess 将 URL 从一个转发到另一个

javascript - 使用 superagent-bluebird-promise 在 Node 服务器上处理服务器重定向

javascript - 如何使用正则表达式更改此值?

javascript - 为什么在jQuery中经过for循环后数组顺序是随机的?

javascript - 有没有办法单击一个选项并在其下方弹出另一个选项?

c# - Razor 智能感知错误 : Feature 'extension method' cannot be used because it is not part of the ISO-2 C# language specification

发布到数据库后的 PHP 重定向

javascript - 获取由 javascript 读取的数组文本字段值

asp.net-mvc - 类型 'System.Web.Mvc.MvcWebRazorHostFactory' 的表达式不能用于返回类型 'System.Web.WebPages.Razor.WebRazorHostFactory'

c# - 如何使用 EF 在 MVC Code-first 中更新/创建多对多关系数据?