接收和发送javascript变量

接收和发送javascript变量,javascript,jquery,Javascript,Jquery,现在已经解决了 问题是我认为getParameterByName()是一个已定义的函数,但事实并非如此,因此需要添加此函数: function getParameterByName( name ){ name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regexS = "[\\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); v

现在已经解决了

问题是我认为
getParameterByName()
是一个已定义的函数,但事实并非如此,因此需要添加此函数:

function getParameterByName( name ){
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
我希望它能帮助像我这样的新手


我需要从url接收一个变量,如果用户单击按钮,则将其发送到另一个页面。为此,我获得了以下代码:

html

<input type="button" id="login-button" onclick="factura_si()" value="Yes"/>
使用此脚本时,按钮不会重定向到该位置。有什么问题吗

功能

factura_si() { 
  var n = getParameterByName('n'); 
  document.write(n); 
} 

不返回任何内容。。。但是,如果我通过随机字母链“grniegor”更改参数“n”,按钮将显示该链。

尝试设置
窗口。位置。href

window.location.href=string\u url;

window.location
是描述当前页面位置的对象。设置它的
href
属性会导致页面跳转到新的url。

如果这对您不起作用,我会探测此代码,它会起作用。 您可以检查开发工具,也许问题出在其他地方

<input type="button" id="login-button" onclick="factura_si()" value="Yes"/>

getParameterByName
返回的内容感谢您的回答。代码
函数factura_si(){var n=getParameterByName('n');document.write(n);}
不返回任何内容。。。但是如果我用一个随机的字母链'grniegor'来改变参数'n',按钮就会显示这个链。这就是你的问题。如果getParameterByName不返回任何内容,则表示“n”未定义,因此当您尝试向url字符串添加“未定义”时,它将失败,整个脚本将停止工作。“n”必须是某个东西,或者你必须先检查它是否存在,如果存在,只将其添加到url。是的,我理解。参数“n”位于url内部。我想获取这个参数并将其发送到新页面。哦,你想从url获取它,然后将其发送到哪里?相同的url?您可以跳过
窗口
部分,它的工作原理也一样。是的,但这里很明显,
位置
是一个全局变量,在某些函数中没有定义。代码块本身通常不是有用的答案,更可能吸引反对票。请解释您正在展示的解决方案的作用,以及该代码回答问题的原因/方式。感谢您的回答,但它不适用于
。href
。我会用新信息更新原来的帖子
<input type="button" id="login-button" onclick="factura_si()" value="Yes"/>
function factura_si() {
    var n = getParameterByName('n');
    var string_url = "https://www.webpage.php?" + "&n=" + n;
    window.location = string_url;
}

function getParameterByName(n) {
    //call server or somthing...
  return "somo_path";
}