使用ajax在jsp中立即隐藏消息

时间:2015-02-19 12:01:52

标签: java jsp servlets

我正在JSP中开发一个示例Web应用程序。在这个应用程序中,我想在触发一些动作后调用servlet方法, 例如,在选择要从数据库中检索学生姓名列表的部门之后,下拉列表中会显示部门列表。我是jsp的新手,任何人帮我实现这一目标,提前致谢。

<form method="post" action="index.jsp" name="form1" onsubmit="return checkme()">

            <table cellpadding="2">
                <tr>
                    <td>
                        <p style="color: blue;font-family: sans-serif;">Select Project:</p>
                    </td>
                    <td>
                        <select id="project" onchange="">
                          <option value="0">Select..</option> 
                          <c:forEach items="<%=department%>" var="entry">
                                <option value="${entry.key}">${entry.value}</option>
                          </c:forEach>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>
                        <p style="color: blue;font-family: sans-serif;">Select Employee:</p>
                    </td>
                    <td>
                       <select id="employee">
                           <option value="0">Select..</option>  
                           <c:forEach items="<%=emplist%>" var="entry1">
                                <option value="${entry1.key}">${entry1.value}</option>
                           </c:forEach>
                        </select>
                    </td>
                </tr>

            </table> 


            <input type="submit" value="Submit">

      </form>

3 个答案:

答案 0 :(得分:0)

使用jquery进行ajax调用将是更清晰有效的方法。像这样:

        $.ajax({
            type : "GET",
            url : "yourservletURLWithParams"
            success : function(data) {
               //update list
            }
        });

答案 1 :(得分:0)

作为@JunedAhsan答案的补充,你可以在没有jquery的情况下完成同样的事情:

function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
       //success handler
    }
  }
xmlhttp.open("GET","yourservletURLWithParams",true);
xmlhttp.send();
}

答案 2 :(得分:0)

在这里,您将找到类似的问题,并回答详细说明和示例代码。 Populating cascading dropdown lists in JSP/Servlet

希望这有帮助!