【发布时间】:2014-07-01 08:09:13
【问题描述】:
我在着陆页上有一个联系表单,当用户填写表单时,信息会通过 URL 传递到第二个着陆页。在第二个登录页面上,我有一个 javascript,它从 URL 中提取名字、姓氏和电子邮件,并将它们插入到相应的字段中。但是,电子邮件会添加到第二个登录页面上的电子邮件字段中,并使用 %40 而不是“@”符号 (bob%40bob.com)。因此,当用户尝试提交表单时,它不会验证。
我知道我需要解码 URI,但我不确定我需要如何将它实现到现有的 javascript 中。下面是我在第二个登录页面上用于解析 URL 并将变量插入表单的 javascript。
<script type="text/javascript">
function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
decodeURIComponent(vars);
return(false);
}
var firstName = getQueryVariable("firstname");
var lastName = getQueryVariable("lastname");
var userEmail = getQueryVariable("email");
window.onload = function() {
document.getElementById('field[63]').value=firstName;
document.getElementById('field[64]').value=lastName;
document.getElementById('field[62]').value=userEmail;
}
</script>
表单字段由小部件创建,无需访问代码。
【问题讨论】:
标签: javascript forms email-validation