将javascript变量值集成到重定向中
从一个php脚本中,我返回3个值:所有值都在毫无困难地转换将javascript变量值集成到重定向中,javascript,Javascript,从一个php脚本中,我返回3个值:所有值都在毫无困难地转换 if(data.code == 600){ var PNRRef = data.locator; var Lname = data.lname; 我试图在重定向链接中使用这两个var值,但似乎无法理解: window.location.href = '/US/en/local/res/MyReservation.php?PN
if(data.code == 600){
var PNRRef = data.locator;
var Lname = data.lname;
我试图在重定向链接中使用这两个var值,但似乎无法理解:
window.location.href = '/US/en/local/res/MyReservation.php?PNRRef="PNRRef"&Lname="Lname"';
但它输出不正确。。。有人能告诉我如何整合这些吗
谢谢 模板文字可能是您问题的解决方案。而不是:
window.location.href = `/US/en/local/res/MyReservation.php?PNRRef=${PNRRef}&Lname=${Lname}`
window.location.href = '/US/en/local/res/MyReservation.php?PNRRef="PNRRef"&Lname="Lname"';
使用以下命令:
window.location.href = `/US/en/local/res/MyReservation.php?PNRRef=${PNRRef}&Lname=${Lname}`;
我会选择一个更简单的解决方案(字符串连接),它总是有效的
window.location.href = '/US/en/local/res/MyReservation.php?PNRRef='+encodeURIComponent(PNRRef)+'&Lname='+encodeURIComponent(Lname);
如果您想使用符合RFC3986的更好的URI编码,请使用rfc3986EncodeURIComponent
而不是encodeURIComponent
:
function rfc3986EncodeURIComponent (str) {
return encodeURIComponent(str).replace(/[!'()*]/g, escape);
}
您需要连接两个选项之一:
window.location.href = '/US/en/local/res/MyReservation.php?PNRRef=' + PNRRef + '&Lname=' + Lname;
或使用模板文本(也称为字符串插值)
在发出任何类似ajax的请求之前,需要对这些变量进行编码(
encodeURIComponent(…)
)“引号不起任何作用。在uri中替换时请注意变量编码,请检查下面的内容,这为我节省了很多时间;)谢谢@loretoparisi-我主要是做PHP,还没有用Java做过,现在我知道:)明白了!谢谢
window.location.href = `/US/en/local/res/MyReservation.php?PNRRef=${PNRRef}&Lname=${Lname}`;