0

我有一个带有 JavaScript 的 .jsp 文件。

如果单击 OK 按钮,我将调用 JavaScript 方法。此方法检测一个 id。

我想将此 id 发送到我的 servlet。在我的 servlet 中,我想用getParameter(id).

我已经在我的本地机器上实现了这个,它运行良好。如果我在服务器上部署我的源代码,将调用 JavaScript 方法并检测 id,但该方法不会向我的 servlet 发送请求。

   <script language="text/javascript">


        function removeLink(){   
            var  id=''; 
            var tmpcounter=0;
            var check=0;
            for (var counter = 0; counter < (document.getElementsByName("inProject[]").length); counter++) {
                if (document.getElementsByName("inProject[]")[counter].checked) {   
                    tmpcounter = tmpcounter+1;
                 }
            }


          for (var zaehler = 0; zaehler < (document.getElementsByName("inProject[]").length); zaehler++) {
            if (document.getElementsByName("inProject[]")[zaehler].checked) {
                check++;
                if((check == tmpcounter) || (tmpcounter==1)){
                    id += 'id='+ document.getElementsByName("inProject[]")[zaehler].value;
                }else{
                    id += 'id='+ document.getElementsByName("inProject[]")[zaehler].value +' OR ';
                }

             }

          }
                    alert(id);
                    location.href='<%=request.getContextPath()%>/issues?action=uploaddeletelink&wherestatement=' + id;   

                    close();


        }

        //-->
    </script>

这是我的确定按钮:

<td align='right'><a class='funktion' href='javascript:removeLink();'>OK<IMG src="<%=request.getContextPath()%>/issuedb/system/layout/funktionpfeil.gif" width="14" height="9" border="0"></a></td>

在我的服务器上,将调用该函数,并检测 id。下面的代码行将请求发送到我的 servlet,但是不起作用。

location.href='<%=request.getContextPath()%>/issues?action=uploaddeletelink&wherestatement=' + id;
4

2 回答 2

-1

为此目的使用 Jquery ajax,这既简单又方便。您需要做的就是使用 jquery 插件。

function removeLink(){   
     $.ajax({
     url: "<%=request.getContextPath()%>/issues?action=uploaddeletelink&wherestatement="+id,              
     type: "POST", 
     success: function(data){
      //If you want to return anything in jsp.
       } 
     });
 }

希望这可以帮助..

于 2013-10-21T09:17:26.360 回答
-1

使用 AJAX 作为调用 servlet。从 servlet 获取响应。

  var xmlHttpReq = false;


if (window.XMLHttpRequest) {
   xmlHttpReq = new XMLHttpRequest();
}

else if (window.ActiveXObject) {
    xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlHttpReq.open('POST', strURL, true);
xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
 xmlHttpReq.onreadystatechange = function() {
    if (xmlHttpReq.readyState == 4) {
        alert(xmlHttpReq.responseText)
    }
}
xmlHttpReq.send();
于 2013-10-21T09:23:12.843 回答