Javascript 如何将参数绑定到URL

Javascript 如何将参数绑定到URL,javascript,java,ajax,jsp,url,Javascript,Java,Ajax,Jsp,Url,这是我的jsp代码。调用getproductsub()并发送ajax请求时,我想将catid参数绑定到url r.open("GET", "url?catid=" + catid,true); 上面这一行似乎是我的代码错误。我该如何修复它 <select class="form-control" id="pcategory" name="pcategory" onchange="getproductsub();"> <script> function getpro

这是我的jsp代码。调用
getproductsub()
并发送ajax请求时,我想将catid参数绑定到url

r.open("GET", "url?catid=" + catid,true);
上面这一行似乎是我的代码错误。我该如何修复它

<select class="form-control" id="pcategory" name="pcategory" onchange="getproductsub();">

<script>
  function getproductsub() {
    var catid = document.getElementById('pcategory').value;
    var url = window.location.href;
    var r = new XMLHttpRequest();
    r.onreadystatechange = function() {
      if (r.readyState === 4 && r.status === 200) {}
    };
    r.open("GET", "url?catid=" + catid, true);
    r.send();
  }
</script>

函数getproductsub(){
var catid=document.getElementById('pcategory').value;
var url=window.location.href;
var r=新的XMLHttpRequest();
r、 onreadystatechange=函数(){
如果(r.readyState==4&&r.status==200){}
};
r、 打开(“获取”、“url?catid=“+catid,true”);
r、 send();
}

请注意,
window.location.href
提供了完整的位置,包括当前url中的参数。因此,
可能包含在其中

你可以使用

var url = window.document.location.pathname;
并将
url
连接到传递给
open()
的字符串


在jsp中编码时使用
getRequestURL()

r.open("GET", "<%= request.getRequestURL()%>?catid=" + catid, true);
r.open(“GET”、“?catid=“+catid,true”);

注意
r.onreadystatechange
分配。必须是
r.onreadystatechange=function(){…}
但是你有
r.onreadystatechange()=function(){…}
哦,我的错误。我修复了它。thanx.thanx作为你的解释。在响应中我不得不使用这个。window.location.href=“?catid=“+catid;
r.open("GET", "<%= request.getRequestURL()%>?catid=" + catid, true);