js和servlet交互的问题

 请问下各位大神:
 $("#searchBox").blur(function(){
var keyValue = $(this).val();
if(keyValue !== null){
    document.forms[0].action='ServletDemoTest?keyValue='+decodeURIComponent(keyValue);
    document.forms[0].submit();
}
  });
  上面这段代码里面我在js中提交之后传参给ServletDemoTest这个servlet已经配置好了,提交之后产生的URl为http://localhost:8080/HistoricalPOI/ServletDemoTest?,

就是?后面的参数没有了,即应该还有一个Keyvalue=“”,这样后端就拿不到值了......
这个是get请求,已经放在doGet里面处理了,请问大神们,为什么每次url中?后面的参数就不在了?为什么被截断了?

把它改成post方式提交,然后servlet的方法名改成 service(doget 和 dopost 的方式都接受),然后试试看可以不。

你这个方式很奇怪,既然是get请求,你又何必动态更改forms的action值呢?你直接发起一个url请求不就行了?

       将方法改成ajax方法
          代码:
              $("#searchBox").blur(function(){
            var keyValue = $(this).val();
               var url="ServletDemoTest";
           $.get(url, { keyValue: decodeURIComponent(keyValue) },
             function(data){//serverlet 返回值
             alert("Data Loaded: " + data);
             });
            });