我的问题是,我想创建"漂亮"访问者的网址如下所示:
我的用户经常会将朋友发送给我的服务,并且我已经为每个人创建了自定义页面,并在标题中显示了该人的名字。例如," John,这是修复此小部件的简单方法"
然后我将页面保存为自定义文件夹中的index.html文件,因此自定义页面的链接结构是域/名称,其中Name是其名字。
这变得乏味,我很乐意使用Javascript来自动化这个过程。但是,我可以找到关于将变量传递给Javascript的唯一文档涉及"丑陋" domain / jspass2.html等域名?FirstName = John& LastName = Smith
有没有办法美化这些域,并仍然将变量传递给javascript代码,将其名称输入到html代码中?我不想"斗篷"一个丑陋的域(例如,使用href)
感谢您的帮助!
答案 0 :(得分:2)
嗯,你可以做到更漂亮"通过使查询字符串更清洁。
示例:
http://www.domain.com/?John,Smith
索引文件中的javascript可以读取。
var getQueryString = function() {
queryString = window.location.search;
queryStringCleaned = queryString.substring(queryString.indexOf('?') + 1 );
return queryStringCleaned;
};
答案 1 :(得分:0)
如果“http://domain.com/Name”是您的域,则变量firstName将具有值“Name”。
var firstName = window.location.pathname.match(/([\w-]+)\/?.*/)[1];
答案 2 :(得分:-1)
您可以在JS中获取整个URL,然后手动解析它#34;#34;。使用this正则表达式(例如)查找传递的参数。
答案 3 :(得分:-1)
除了保罗之外,我还给你写了一些从你提供的网址中提取名字字段的东西。如果格式一致,并且您可以在javascript中获取网址,则可以使用此方法。您可能必须先创建页面,然后重定向用户,因为javascript是客户端语言,页面已经呈现。
var url = "domain/jspass2.html?FirstName=John&LastName=Smith";
url = url.slice(url.indexOf("FirstName=") + 10, url.length);
url = url.slice(0, url.indexOf("&"));