如果我不解释好,请在评论中告诉我。
正如问题标题所说的那样,请告诉我如何解码美元符号($),因为当从网页提交时它会转到url中的%24,就像您可以使用此链接一样。
http://mubisoft.fh2web.com/Kayak/submit.html
尝试提交数据,它将从url获取数据,并尝试再次填充输入字段,但当它尝试从url获取数据时,需要使用%24而不是$ sign。
这里是我在其中使用的javascript代码。
var url = window.location.href;
var input = $( "#one" );
var input2 = $( "#two" );
if(url.indexOf("?") >= 0){
var params = url.split('?');
var params1 = params[1].split('&');
var a = params1[0].split('=');
var r = a[1];
var a = params1[1].split('=');
input2.val(a[1]);
input.val(r); // here are populating data getting from url
}
$( "#one" ).blur(function() {
if(input.val().substring(0,1) == '$'){
return false;
}else{
input.val( "$ "+input.val() )
}
});
答案 0 :(得分:1)
通过此函数运行编码字符串:
decodeURIComponent( encodedString );
从变量字符串和解码中获取变量的完整代码:
//this code executes immediately and pulls all the variables
var QueryString = function () {
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
pair[1] = decodeURIComponent( pair[1] ); //encoded characters are decoded here
if (typeof query_string[pair[0]] === "undefined") {
query_string[pair[0]] = pair[1];
}
}
return query_string;
} ();
//then you can access the querystring variables like this
QueryString.varName
答案 1 :(得分:0)
鉴于decodeURI
没有解码美元符号($
),您应该使用.replace()
:
var myURL = 'www.somesite.com/somepage.php?price=%2420';
myURL = myURL.replace(/%24/g,'$'); // www.somesite.com/somepage.php?price=$20