1.a标签提交数据,不跳转
<a href="javascript:;" id="updateStatus" oid="${item.id}" class="audit-details">开票</a>
$("#updateStatus").on("click", function() {
var id = $(this).attr("oid");
$.ajax({
url : "c/receipt/updataReceipt",
type : "POST",
data : {"id":id},
dataType : "json",
async : false,
success : function(result) {
if (result.flag == "success") {
//alert("删除成功");
window.location.reload(true);
} else {
alert("操作失败,请刷新重试!");
}
},
error : function(e) {
alert(e);
}
});
});
后端的代码
/**
* 修改发票的状态 1已开
* @param request
* @param project
* @return
*/
@RequestMapping("/updataReceipt")
@ResponseBody
public String updataReceipt(HttpServletRequest request, String id ){
try {
ReceiptService receiptService = new ReceiptService(MSessionUtil.getOrgnizationId(request));
Receipt findOne = receiptService.findOne(id);
findOne.setStatus("1");
receiptService.save(findOne);
return "{\"flag\":\"success\"}";
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "{\"flag\":\"error\",\"msg\":\"" + e.getMessage() + "\"}";
}
}
jquery attr()方法
jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。
-
attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回 undefined )
-
attr(属性名, 属性值) //设置属性的值 (为所有匹配的元素设置一个属性值。)
-
attr(属性名,函数值) //设置属性的函数值 (为所有匹配的元素设置一个计算的属性值。不提供值,而是提供一个函数,由这个函数计算的值作为属性值。)
4.attr(properties) //给指定元素设置多个属性值,即:{属性名一: “属性值一” , 属性名二: “属性值二” , … … }。(这是一种在所有匹配元素中批量设置很多属性的最佳方式。 注意,如果你要设置对象的class属性,你必须使用’className’ 作为属性名。或者你可以直接使用’class’或者’id’。
2.button按钮表单提交数据
<form id="searchform" action="c/receipt/index" method="post">
<div class="am-g">
<div class="am-u-sm-1"> 搜索条件:</div>
<div class="am-u-sm-11">
<div class="am-g">
<div class="am-u-sm-4">
<select name="status" data-am-selected="{searchBox: 0,maxHeight:100}" style="display: none;">
<option <c:if test="${last_condition.status eq '0'}">selected</c:if> value="0">未开票</option>
<option <c:if test="${last_condition.status eq '1'}">selected</c:if> value="1">已开票</option>
</select>
</div>
<div class="am-u-sm-4">
<input type="text" name="name" value="${last_condition.name}" placeholder="用户名">
</div>
<div class="au-seek-box am-u-sm-4">
<button type="button" class="btn query-btn">搜索</button>
</div>
</div>
</div>
</div>
</form>
//js点击查询按钮
$(document).on('click','.query-btn',function(e){
$("#searchform").submit();
e.preventDefault();
});
后端代码
/**
* 获取所有发票的记录
* @param request
* @param project
* @return
*/
@RequestMapping("/index")
public String index(HttpServletRequest request, Receipt receipt){
return "net/manage/receipt-manage";
}
3.button按钮onclick提交数据(el表达式取值)
HTML的
<button onclick="deleteStatus('${item.id}')">删除</button>
function deleteStatus(id){
$.ajax({
url : "c/receipt/deleteReceipt",
type : "POST",
data : {"id":id},
dataType : "json",
async : false,
success : function(result) {
if (result.flag == "success") {
//alert("删除成功");
window.location.reload(true);
} else {
alert("操作失败,请刷新重试!");
}
},
error : function(e) {
alert(e);
}
});
}
说明:本人前端菜鸡,作为记录使用,欢迎前端大佬指点