我不知道如何从回复对象中读取日期。 我从servlet发送到javascript两个字符串(isValid,liczbaObiektow)以及更多类型为Miasto的对象。我试着展示"克拉科夫"通过此代码提醒(数据+'。' + tnp)但不起作用。
我的源代码文件:
index.jsp:
<body>
<label>Wojewodztwo</label>
<select id="woj" name="wojewodztwa" size="1">
<option value="" disabled selected>Wybierz Wojewodztwo</option>
<option value="2">Małopolskie</option>
<option value="4">Mazowieckie</option>
</select>
<BR/>
<BR/>
<BR/>
<label>Miasta</label>
<select id="miasto" name="miasta" size="1">
<option value="" disabled selected>Wybierz miasto</option>
</select>
<BR/>
<BR/>
<BR/>
<label>Zabytki</label>
<select name="zabytki" size="1">
<option value="" disabled selected>Wybierz artefakt</option>
</select>
</body>
ajax.js:
$(document).ready(function() {
//$('#miasto').append('<option value="test2">test2</option>');
//$('select[name="miasta"]').append('<option value="test2">Monarchia</option>');
var tnp;
$('#woj').change(function () {
//alert('Tui2');
//var b = $(this).val();
//alert(b);
$.ajax({
url: 'update',
type: 'GET',
dataType: 'json',
data: $('#woj').serialize(),
success: function(data) {
if(data.isValid){
alert(data.liczbaObiektow);
for(var i=0; i < data.liczbaObiektow; ++i) {
tnp = 'a'+i;
alert(data+'.'+tnp);
}
}
else {
alert('Please enter a vaild username');
}
}
});
});
});
update.java:
class Miasto {
int idMiasta;
String opisMiasta;
Miasto(int idMiasta, String opisMiasta) {
this.idMiasta = idMiasta;
this.opisMiasta = opisMiasta;
}
}
@WebServlet("/update")
public class UpdateUsername extends HttpServlet {
private static final long serialVersionUID = 1L;
private boolean isValid;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//ServletContext sc = getServletContext();
//sc.setAttribute("username", "sex");
isValid = false;
String wojewodztwo = request.getParameter("wojewodztwa");
Map <String, Object> map = new HashMap<String, Object>();
if ( wojewodztwo != null && wojewodztwo.trim().length() != 0 ) {
if(wojewodztwo.equalsIgnoreCase("2")) {
map.put("liczbaObiektow", "2");
map.put("a1", new Miasto(22, "Krakow"));
map.put("a2", new Miasto(33, "Nowa-Huta"));
}
else {
map.put("liczbaObiektow", "3");
map.put("a1", new Miasto(22, "Warszawa"));
map.put("a2", new Miasto(33, "Starowka"));
map.put("a3", new Miasto(33, "Twoja stara"));
}
isValid = true;
//map.put("username", wojewodztwo);
map.put("isValid", isValid);
write(response, map);
} else {
map.put("isValid", isValid);
write(response, map);
}
}
private void write(HttpServletResponse response, Map<String, Object> map) throws IOException {
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(new Gson().toJson(map));
}
}
非常感谢您的帮助。