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