根据电子邮件中单击的链接预填充用户名

时间:2012-11-08 16:21:35

标签: javascript grails

我正在向用户发送电子邮件。在这封电子邮件中,他们必须点击一个链接,将他们带到我网站的登录页面:
www.testsite /登录

我希望为他们预先填充用户名(电子邮件地址)。

我在考虑简单地调整发送给他们的链接以包含它如下:
www.testsite/login?email=tester@test.com

然后我可以使用一些javascript来提取此信息并将其放在表单字段中。

我希望人们能够考虑这种方法 安全吗?是否有更好或更简单的方法来实现它?这种方法有问题吗?

我的应用顺便使用grails 1.3.7。

由于

1 个答案:

答案 0 :(得分:0)

虽然在服务器端预先填充它可能会更好,但这里是Stack Overflow上another answer的修改:

function getEmailFromUrl(){
   var regexS = "[\\?#&]email=([^&#]*)";
   var regex = new RegExp(regexS);
   var results = regex.exec(window.location.search);
   if(results == null) return "";
   else return decodeURIComponent(results[1].replace(/\+/g, " "));
}

然后,使用该函数的结果填充文本框:

document.getElementById('email_address').value=getEmailFromUrl();

希望这有帮助。