新闻发布系统笔记二
来源:互联网 发布:数据权限流程图 编辑:程序博客网 时间:2024/06/06 15:54
1.批量删除的实现:首先是前端的checkbox,实现点击最上面的复选框,会全选或者取消下面的复选框选择状态。
通过jquery实现,涉及了一个属性选择器,用来选择结点或者设置属性。prop法,$("input[name='commentIds']").prop("checked",true);
这一句是设置所有name属性是commentIds的结点checked属性为true。代码如下:
$(document).ready(function(){$("#checkedAll").click(function(){if($(this).prop("checked")==true){$("input[name='commentIds']").prop("checked",true);}else{$("input[name='commentIds']").prop("checked",false);}});});1.2或许下面所有已经选择的记录
var chk_value=[];
$('input[name="commentIds"]:checked').each(function(){
chk_value.push($(this).val());
});
需要把数组中统计的记录id用","分割,传给后台,然后批量删除。这种方式就可以 var commentIds=chk_value.join(",");
后台返回json格式的数据,显示删除了多少条记录,然后重新请求一次servlet,获取更新后的记录。代码如下:使用ajax请求,eval把后台传的json转换成js对象。window.location.href重新请求。${pageContext...}是jsp中的el表达式
if(confirm("确认要删除这些评论吗?")){$.post("comment?action=delete",{commentIds:commentIds},function(result){var result=eval('('+result+')');if(result.success){alert("成功删除"+result.delNums+"条数据");window.location.href="${pageContext.request.contextPath}/comment?action=backList";}else{alert(result.errorMsg);}});}1.3 dao写法 返回删除记录数 用in关键字批量删除,ids用,分割
public int commentDelete(Connection con,String commentIds)throws Exception{String sql="delete from t_comment where commentId in ("+commentIds+")";PreparedStatement pstmt=con.prepareStatement(sql);return pstmt.executeUpdate();}
2.带文件上传的form 通过 item.isFormField() 判断是普通的表单域 还是文件上传 如果是普通表单域 要通过item.getString("utf-8")
获取真正的内容。
FileItemFactory factory=new DiskFileItemFactory();
ServletFileUpload upload=new ServletFileUpload(factory);
List<FileItem> items=null;
try {
items=upload.parseRequest(request);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Iterator itr=items.iterator();
News news=new News();
while(itr.hasNext()){ }
上面是通过fileupload上传文件的标准写法 。
获取普通表单内容和上传的图片:
//普通表单域处理
if(item.isFormField()){
String fieldName=item.getFieldName();
if("newsId".equals(fieldName)){
if(StringUtil.isNotEmpty(item.getString("utf-8"))){
news.setNewsId(Integer.parseInt(item.getString("utf-8")));
}
}else if("title".equals(fieldName)){
news.setTitle(item.getString("utf-8"));
}
}//当上传图片处理,并且上传图片名字不为空时才处理
else if(!"".equals(item.getName())){
try {
String imageName=DateUtil.getCurrentDateStr();
news.setImageName(imageName+"."+item.getName().split("\\.")[1]);
String filePath=PropertiesUtil.getValue("imagePath")+imageName+"."+item.getName().split("\\.")[1];
item.write(new File(filePath));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
3.修改新闻时,类别列表自动对应当前新闻的类别 当newsType.newsTypeId==news.typeId 就把这个option默认选中
注意当<option selected>tt</option> 这个option就选中了 完整代码如下:
<select id="typeId" name="typeId">
<option value="">请选择新闻类别</option>
<c:forEach var="newsType" items="${newsTypeList }">
<option value="${newsType.newsTypeId }"${newsType.newsTypeId==news.typeId?'selected':''}>${newsType.typeName }</option>
</c:forEach>
</select>
显示信息的单选框 和数据库中的信息对应 如果isHead==1 那么把这个checkbox选中
<input type="checkbox" id="isHead" name="isHead" value="1"${news.isHead==1?'checked':'' }>头条
- 新闻发布系统笔记二
- [ssh新闻发布系统二] 读取新闻
- [ssh新闻发布系统二] 读取新闻
- [ssh新闻发布系统二] 读取新闻
- 牛腩新闻发布系统综合笔记(二)
- 新闻发布系统细节笔记
- 新闻发布系统笔记一
- 牛腩新闻发布系统(二)
- 牛腩新闻发布系统(二)
- Jsp新闻发布系统(二)
- 实现新闻发布系统(二)一级新闻标题发布
- 新闻分页---新闻发布系统
- vs2003新闻发布系统
- 新闻发布系统
- 新闻发布系统
- 新闻发布系统
- 新闻发布系统
- 新闻发布系统总结
- Unity3D自带寻路系统原创入门教程
- map的一个注意点
- eclipse 添加注释简介
- [Elasticsearch] 部分匹配 (二) - 通配符及正则表达式查询
- YT06-背包-1001—Bone Collector -(6.27日-烟台大学ACM预备队解题报告)
- 新闻发布系统笔记二
- NSString字符串截取三种方法
- Jquery插件开发 详细
- 回调函数和观察者模式
- php里 file_get_contents("php://input")
- Unity3D架构设计NavMesh寻路
- [Elasticsearch] 部分匹配 (三) - 查询期间的即时搜索
- udt4编程简介(原文)
- CPU中的缓存和操作系统中的缓存分别是什么?