function department(){
$("#projectid").css('display','block');//显示部门信息
$("#other").attr('checked',true);//选中其他部门按钮
$("#benbumen").attr('checked',false);//不选中本部门按钮
$.ajax({type:"post",
url:"<%=request.getContextPath()%>/reinbursementAction_getdepartment.action",
dataType : "json",
timeout : 4000,
success : function(data) {
var obj = eval(data);//将string转化成ajax可识别的对象
$("#projectid").empty();
for ( var i = 0; i < obj.length; i++) {
$("#projectid").append(
"<option value="+obj[i].id+">"
+ obj[i].name + "</option>");
}
},
error : function() {
alert("与服务器连接超时...");
}
});
}
</script>
<script type="text/javascript">
jsp
controller层
private HttpServletResponse reponse;
public HttpServletResponse getReponse() {
return reponse;
}
public void setReponse(HttpServletResponse reponse) {
this.reponse = reponse;
}
public void getdepartment()throws Exception{
reponse = ServletActionContext.getResponse();
reponse.setCharacterEncoding("UTF-8");// 指定返回值的编码方式,必须放在out声明之前
StringBuffer sb = new StringBuffer();
sb.append("[");
List<Department> departmentlist=departmentService.findAll();
for(Department dep:departmentlist){
sb.append("{\"id\":"+dep.getId()+",\"name\":\""+dep.getName()+"\"},");
}
sb.deleteCharAt(sb.length()-1).append("]");
String depart=sb.toString();
System.out.println(depart);
PrintWriter out = null;
reponse.setContentType("text/javascript;charset=UTF-8");
try {
out = reponse.getWriter();
out.print(sb);
out.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
out.close();
}
}