Javascript 拆分哈希url以填充表单中的文本字段
我有一个javascript函数,用于拆分参数的url,然后使用找到的参数设置文本字段的值。它工作完美。。。一旦我刷新页面。如何让它在页面加载时填充文本字段Javascript 拆分哈希url以填充表单中的文本字段,javascript,forms,url,hash,Javascript,Forms,Url,Hash,我有一个javascript函数,用于拆分参数的url,然后使用找到的参数设置文本字段的值。它工作完美。。。一旦我刷新页面。如何让它在页面加载时填充文本字段 $(function(){ var urlParams = {}; (window.onload = function () { var match, pl = /\+/g, search = /([^&=]+)=?([^&]*)/
$(function(){
var urlParams = {};
(window.onload = function () {
var match,
pl = /\+/g,
search = /([^&=]+)=?([^&]*)/g,
decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); },
query = window.location.search.substring(1);
urlParams = {};
while((match = search.exec(query)) !== null)
urlParams[decode(match[1])] = decode(match[2]);
})();
window.onload=function(){
var nm= urlParams['name'];
var pn= urlParams['phone'];
var em= urlParams['email'];
document.getElementById('txtName').value=nm;
document.getElementById('txtPhone').value=pn;
document.getElementById('txtEmail').value=em;
}
})
有人能帮我吗?首先,窗口太多了。当DOM准备就绪时,jQuery的$function{}将被激发,这对于您的情况来说已经足够了。然而,我试图重现您的问题,但该功能对我有效。尝试删除window.onloads并告诉我是否有用。也许准备一些JSFIDLE也不错
$(function(){
var urlParams = {};
(function () {
var match,
pl = /\+/g, // Regex for replacing addition symbol with a space
search = /([^&=]+)=?([^&]*)/g,
decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); },
query = window.location.search.substring(1);
while((match = search.exec(query)) !== null)
urlParams[decode(match[1])] = decode(match[2]);
})();
var nm= urlParams['name'];
var pn= urlParams['phone'];
var em= urlParams['email'];
document.getElementById('txtName').innerText=nm;
document.getElementById('txtPhone').innerText=pn;
document.getElementById('txtEmail').innerText=em;
})
同样的结果,在点击表单链接之前,我会使用上一页的代码,看看代码是否有问题。我发现了,这肯定是上一页的表单代码。我把它传递错了,我最初使用的是javascript,并通过单击函数window.location.href将其切换为javascript。感谢您的关注,我仍然很感激!我能给你打分吗?