我試圖根據從另一個下拉列表中選擇的先前值來獲取下拉列表的值。我能夠從servlet Java類調用和值返回到servlet的,但它沒有得到傳承給jsp頁面將servlet值傳遞給jsp頁面
jsp頁面中部分(index.jsp)之後
<select id="region" name="region" class="form-control" onchange="getgroups()" required="required" >
<option value="" default selected>Select region</option>
<option value="region1">region1</option>
<option value="region2">region2</option>
<option value="region3">region3</option>
<option value="region4">region4</option></select>
的平變化值在區域調用這個函數
function getgroups(){
var j = document.getElementById("region");
var s = document.getElementById("secret_key");
var a = document.getElementById("access_key");
var output = $.ajax({
type: 'POST',
url: 'http://localhost:8066/VMMigratorNew/ec2util',
data: {"region":j.value,
"secret_key":s.value,
"access_key":a.value,
},
success: function(response) {
return output.responseText;
}
});
}
和servlet的
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String region = request.getParameter("region");
String secretKey = request.getParameter("secret_key");
String accessKey = request.getParameter("access_key");
List<String> vpcs = RunEc2Command.getVPCForUSer(AWS_ACCESS_KEY, AWS_SECRET_KEY, region);
if(vpcs != null && vpcs.size() > 0) {
request.setAttribute("vpclist", vpcs);
}
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
}
,並在同一index.jsp頁面,我試圖在index.jsp本身的下拉框中顯示列表值。
<select id="vpc" name="vpc" class="form-control" placeholder="Choose VPC" >
<option value="" default selected>Select VPC</option>
<c:forEach items="${vpclist}" var="vpcs">
<option>
${vpcs}
</option>
</c:forEach>
</select>
我需要從區域下拉框中選擇值後,在drop dron box中獲取VPC的值。我在這裏先向您的幫助表示感謝。
您的JSP中有一個尾隨' - %>'。 AJAX回調對收到的響應沒有任何作用。它必須用響應中收到的那個替換現有的選擇框。 –
我已刪除該尾隨。它仍然沒有工作。 – daivik
準確定義「不工作」。你期望會發生什麼,而發生什麼呢? –