做项目对数据的增删改查是必不可少的,项目组的成员负责的模块都有这个功能,如果每个人遇到删除都写一遍提示代码,那就不好维护了,保不准谁写的有错,所以,提取出来,写一个插件供大家使用。
1.jsp
<s:iterator value="#departmentList">
<tr class="TableDetail1 template">
<td><s:property value="dname"/></td>
<td><s:property value="description" escape="false"/></td>
<td>
<!-- 在struts2标签中只能用ognl表达式
在html只能用el表达式
-->
<s:a action="departmentAction_deleteDepartment?did=%{did}">删除</s:a>
<s:a href="departmentAction_updateUI?did=%{did}">修改</s:a>
</td>
</tr>
</s:iterator>
删除按钮被a标签包围,你可能会说不是被struts2标签包围吗?但struts2标签解析后还是a标签
2.js插件
定义了一个confirm函数,通过传入json格式的数据为控件绑定方法
(function(jQuery){
// $.fn.confirm = function(message){
// return window.confim(message);
// }
$.confirm = function(confirJson){
$("a").each(function(){ //为a标签绑定方法
if($(this).text()== "删除"){ //如果是删除
$(this).unbind("click");
$(this).bind("click",function(){
confirJson.callback();//调用回调函数
return window.confirm(confirJson.message);//弹出提示信息
});
}
});
}
})(jQuery);
调用:传入json格式的参数
$().ready(function(){
$.confirm({
message:"您确认要删除吗?",
callback:function(){
alert("是的");
}
});
});
这就是把公共的东西抽出来,大家都引用这个js就避免了不必要的错误,既节省时间又能提高开发效率。实现这个功能不难,重要的是要具有这种思想和胸怀。