首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript重定向控制

JavaScript重定向控制
EN

Stack Overflow用户
提问于 2016-01-14 00:03:22
回答 2查看 32关注 0票数 1

我有一个页面www.junk.com,它有一个输入来输入一个ID,然后点击submit。单击该按钮时,将执行以下JavaScript:

代码语言:javascript
复制
var host = "";

var Go = {

onReady: function() {

    $(document).on("click", ".event-submit", function(event) {
        event.preventDefault();
        var id = $(".event-id").val();
        window.location.replace(host + "event/" + id);
    });

    $(".event-id").keypress(function(e) {
        if (e.which == 13) {
            var id = $(".event-id").val();
            window.location.replace(host + "event/" + id);
            return false;
        }
    });

}

};

$(document).ready(Go.onReady);

这就把用户带到了www.junk.com/event/1234

这很好,这就是我想要的!

在这个新页面上,www.junk.com/event/1234有相同的输入/提交,这样用户就可以对新事件进行相同的精确搜索。问题是,这一次,使用相同的JavaScript,url变成:

www.junk.com/event/event/5678

对于如何使用相同的JavaScript函数有什么想法,但这是一致的吗?这样就可以将数据(事件id)以其他方式传递给控制器了吗?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-14 00:12:38

如果主机总是相同的,则可以使用不带主机的绝对路径:window.location.replace("/event/" + id)

票数 1
EN

Stack Overflow用户

发布于 2016-01-14 00:23:47

djxak已经提到,您应该使用绝对路径而不是相对路径。当您最终使用"host“var时,如果您在后面使用一个绝对路径(带有一个前导斜杠),您应该确保没有尾随斜杠。" /event/“中的前导斜杠表示它应该转到/event/从根开始。如果没有前导斜杠,则表示应该转到相对位置。

asdf.com/abcd/1234/qwerty,根目录是asdf.com。相对位置将删除最后一个斜杠之后的任何内容(留给asdf.com/abcd/1234/),然后添加相对位置。

示例当前位置:asdf.com/abcd/1234/qwerty

相对位置:x/y/z

asdf.com/abdc/1234/ + x/y/z Result: asdf.com/abcd/1234/x/y/z

绝对位置:/x/y/z

asdf.com + /x/y/z Result: asdf.com/x/y/z

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34779412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档