Javascript 使用decodeURIComponent时出现的问题

Javascript 使用decodeURIComponent时出现的问题,javascript,html,decodeuricomponent,Javascript,Html,Decodeuricomponent,我正在尝试解码URL链接中的%20,这样当我解码当前页到下一页的代码时,如果不在文本字段中添加%20,我将无法获得我的值。下面是我解码%20的代码以及我放置的位置 function loadRecord(i){ var item=dataset.item(i); fname.value = item['fname']; id.value = item['id']; window.location.href = decodeURIComponent("userup2

我正在尝试解码URL链接中的%20,这样当我解码当前页到下一页的代码时,如果不在文本字段中添加%20,我将无法获得我的值。下面是我解码%20的代码以及我放置的位置

function loadRecord(i){
    var item=dataset.item(i);
    fname.value = item['fname'];
    id.value = item['id'];
    window.location.href = decodeURIComponent("userup2.html?id="+item['id']+"&fname="+item['fname']+"&val=300");
    return false;
}
这是当前数据,将重定向到第二页以显示数据


为什么即使我对decodeURIComponent进行了编码,它仍然显示%20?请帮助

当URI传递到输入时,您必须对其进行解码。对其进行解码以将其传递到
窗口。位置
正确,但浏览器将再次退出

我假设您从参数中获取输入值。因此,当您从参数设置输入值时(在您的例子中,当然是在文档
userup2.html
中),您必须解码URI

因此,当您从参数设置输入值时,必须再次对其进行解码:

document.getElementByTagName('input').value = decodeURI(...your code to get the params);
为什么即使我对decodeURIComponent进行了编码,它仍然显示%20

浏览器正在对url进行编码以使其成为有效的url。即使您正在对其进行解码,它也会再次分配给window.location.href,因此控件将返回到浏览器


您不能绕过它。而是在接收端解码url。

您使用什么编程语言来构建html?非常感谢,我终于可以解码%20了,再次感谢!!=)