在我们做项目的过程中,经常会从数据库里面去取值来传到前台页面做展示,在这个过程中我们有很多方式把所需要的值传到前台去,在Structs2中我们可以通过get/set方法直接在页面取值或赋值,也可以通过request、session等方式把值传到前台页面,我在这里主要是用
JSON的方式把值传到前台页面去做展示。
这里使用的框架是SSH框架,js用到了JQuery,代码展示如下:
前台页面:
//根据币种修改时级联生产汇率
//下拉框失去焦点时产生
$("select[name='requestModel.currencytypename']").blur(
function(){
var currencyname = $("select[name='requestModel.currencytypename']").val();
//通过JQuery的get
JSON方法要调用的action方法
var url = "${ctx }/request/getRate.action?currencyname="+currencyname;
$.getJSON(url,function(data){
//data.rate是获取后台传过来的值
$("#exchangerate").val(data.rate);
});
});
后台Action方法:
引入的包是import net.sf.json.JSONObject;
/**
* 获取汇率并传到前台页面
* @throws IOException
*/
public void getRate() throws IOException{
//获取页面传过来的币种
String currencyCode = this.getRequest().getParameter("currencyname");
//获取汇率
double rate = requestServic.getExchangeRate(currencyCode);
PrintWriter pw = this.getResponse().getWriter();
JSONObject jsonObject = new JSONObject();
//封装json对象并输出
jsonObject.put("rate", rate);
pw.println(jsonObject);
}