页面局部刷新改变页面信息
js文件 function udpateCommtiy(id,param)
{
$.post("/background/savegemStorage.do?param=updateState&bean.id="+id+"&bean.gemstoneState="+param,function(m){
if(m=="true")
{
$("#"+id).html("下架");
}else
{
$("#"+id).html("上架");
}
});
}
action方法:
//修改上架 下架状态 ajax方法
public ActionForward updateState(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)throws Exception {
GemStorageForm gf=(GemStorageForm)form;
GemStorageBackFace gface= new GemStorageBackFace();
GemStorage storge = gface.selectGemByid(gf.getBean().getId());//按id 查询宝石信息
String msg="";
if(storge.isGemstoneState())
{
storge.setGemstoneState(false);
msg="true";
gface.saveOrUpdate(storge, new MethodArg(MethodArg.background,this.getEmployeeRegisterId(request)));//保存改变的值
}else if(!storge.isGemstoneState())
{
storge.setGemstoneState(true);
msg="false";
gface.saveOrUpdate(storge, new MethodArg(MethodArg.background,this.getEmployeeRegisterId(request)));
}
response.getWriter().write(msg);
response.getWriter().flush();
return null;
}
jsp页面:
<td name="gemstoneState">
<c:choose>
<c:when test="${gemstorage.gemstoneState == true}">
<a
href="javascript:if(conf irm('确认修改吗?')){udpateCommtiy('${gemstorage.id}',true);}">
<span id="${gemstorage.id}">上架</span>
</a>
</c:when>
<c:otherwise>
<a
href="javascript:if(confirm('确认修改吗?')){udpateCommtiy('${gemstorage.id}',false);}">
<span id="${gemstorage.id}">下架</span>
</a>
</c:otherwise>
</c:choose>
</td>
id属性为实体类字段。
hql 很简单,,就没有写了。。
PS:可能只有我自己看的懂。。呼呼。。自己做项目中遇到的。。。保存下来以后会用到啦。。