所以目前,当我的webapp发出get请求时,uri看起来像这样:
用户?usderId = 123
我想要的是
用户/ 123
我该怎么做?
谷歌搜索如何在javascript中获取请求给我以前的URI,当我想要后者。
我想要后一种格式的原因是因为我在Spring中的requestMapping看起来像
@RequestMapping(value =“/ users / {userId}”,method = RequestMethod.GET)
编辑:
所以我在回复中尝试了这个方法,似乎我的javascript函数从未被调用过。
<form id="idForm" class="form-inline" role="form" action="/users">
<div class="form-group">
<div class="input-group inline-input-group">
<div class="input-group-btn">
<button type="button" class="btn btn-default dropdown-toggle fixedWidth225" data-toggle="dropdown">User Id<span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#">aaa ID</a></li>
<li><a href="#">bbb ID</a></li>
<li><a href="#">ccc ID</a></li>
<li><a href="#">ddd ID</a></li>
</ul>
</div>
<label class="sr-only" for="EntityId">Entity Id</label>
<input type="text" class="form-control fixedWidth225" name="userId">
</div>
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
<div id="displayDiv">
</div>
这是我的表格,这是js:
$(document).ready(function() {
document.getElementbyID("idForm").submit(function(event) {
event.preventDefault();
var url = document.getElementbyID("idForm").attr( "action") + "/" + document.getElementbyID("userId").val();
httpGet(url);
});
});
*/
function httpGet(restURL)
{
var xmlHttp = null;
// Assuming its a text field
xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", restURL, false );
xmlHttp.send( null );
return xmlHttp.responseText;
}
为什么idForm提交的javascript函数没有被调用?
---------------------------正好在这一行之上的部分是------------ ----------
编辑:
我的问题的底线:
带有提交按钮的HTML表单可以生成一个get请求,其中为表单指定了“action”,为输入文本指定了“name”。我只是希望能够格式化此get请求从用户生成的URI?userID = 123到users / 123.
必须有一种方法可以简单地改变URI的格式,不是吗?
答案 0 :(得分:1)
参考Question
function httpGet(restURL)
{
var xmlHttp = null;
restURL=restURL+"/"+document.getElementbyID("usderId").val();
// Assuming its a text field
xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false );
xmlHttp.send( null );
return xmlHttp.responseText;
}
答案 1 :(得分:1)
可能是因为语法错误:*/
,并且因为HTML DOM不是jQuery,所以没有form.submit(callback)
和.attr()
以及.val()
这样的方法等等......您应该使用jQuery,或阅读HTML DOM手册。