我需要使用 jquery 从 (#) 之后的 url 获取值

I need to get values from a url after (#) with jquery

我有这个url:

http://test.words.aspx#word_id=1034374#lang_code=en

我需要获取 word_id 和语言代码的值并将它们分配给变量。

var word_id = 1034374;
var lang_kod = en;

这是您需要的代码:

var link = window.location;

var data = link.split("#");

var word_id = data[1].split("=")[1];
var lang_code = data[2].split("=")[1];

使用 window.location,您将获得当前的 url(另一种选择是 document.location

然后用散列符号 (link.split("#")) 将其拆分,结果存储为字符串数组 (data),现在在索引 0 处包含 http://test.words.aspxword_id=1034374 在索引 1 和 lang_code=en 在索引 2;

您现在要做的是用等号 (data[1].split("=")) 将索引 1 处的字符串拆分。这也是一个字符串数组,它在索引 0 处具有 word_id,在索引 1 处具有 1034374,这正是您所需要的 (data[1].split("=")[1]).

按照相同的逻辑,您还可以获得 lang_code 变量。

在这里测试:

var link = "http://test.words.aspx#word_id=1034374#lang_code=en"

var data = link.split("#");

var word_id = data[1].split("=")[1];
var lang_code = data[2].split("=")[1];

console.log("Word ID = " + word_id);
console.log("Lang Code = " + lang_code);

希望这对您有所帮助:)

你真的应该只有一个 URL 片段。但在您的情况下,您可以执行以下操作来实现此目的。

var url = "http://test.words.aspx#word_id=1034374#lang_code=en"; // or use window.location;
var url_splitted = url.split('#');

alert((url_splitted[1]).split('=')[1]); // showing you the values
alert((url_splitted[2]).split('=')[1]); // showing you the values

var work_id = (url_splitted[1]).split('=')[1];
var lang_code = (url_splitted[2]).split('=')[1];

工作 JSFiddle:https://jsfiddle.net/o0nwyvfz/

注:

如果您要使用多个 URL 片段,我建议您使用 URL 参数,例如:http://test.words.aspx?word_id=1034374&lang_code=en

您可以通过以下方式检索:

解决方案提供者:http://www.jquerybyexample.net/2012/06/get-url-parameters-using-jquery.html

var getUrlParameter = function getUrlParameter(sParam) {
    var sPageURL = decodeURIComponent(window.location.search.substring(1)),
        sURLVariables = sPageURL.split('&'),
        sParameterName,
        i;

    for (i = 0; i < sURLVariables.length; i++) {
        sParameterName = sURLVariables[i].split('=');

        if (sParameterName[0] === sParam) {
            return sParameterName[1] === undefined ? true : sParameterName[1];
        }
    }
};

假设 URL 是,这就是你如何使用这个函数, http://test.words.aspx?word_id=1034374&lang_code=en

var tech = getUrlParameter('word_id');
var blog = getUrlParameter('lang_code');