代码如下:
$(".add").click(function(){
var val = parseInt($(this).siblings("input").val());
//加请求
ajaxFn($(this),...)
})
$(".minus").click(function(){
var val = parseInt($(this).siblings("input").val());
//减请求
ajaxFn($(this),...)
})
//更新数量
function addMinus(_this,num){
var val = parseInt($(_this).val());
var nums = val + num;
$(_this).siblings("input").val(num)
}
function ajaxFn(_this,...){
$.ajax({
url:"/",
data:"",
type:"json",
success:function(data){
if(data){
//获取成功返回数量
addMinus(_this,1)
}
}
})
}
购物车数量当请求成功的时候根据参数判断 +1 -1
【问题】ajaxFn
方法在不传递this
的情况下,能不能找到对应的商品更新数量;或者改写目前逻辑。
MVC啊,伪代码:
var data = { //存放商品与对应数量
product1 : {
id : 1,
num : 5
},
product2 : {
id : 2,
num : 5
}
}
var dataControl = function () { //此方法负责商品数据的更新,可在ajax之后调用,因此ajax时候只需要传对应的url与id即可
}
var showData = function () { //数据的展示----看着做了
}
大致思路如上。那直接angular了嘛
你这展现和数据严重耦合,当然可以不传$(this), ajax处理的只是数据,塞回页面跟数据没关系,你这里input不都是一个吗,为什么不给个id