AngularJS的批量操作

今天做一个批量修改的需求,算是对JS的学习吧。

界面:

<input type="checkbox" ng-model="isSelected(item.id)" ng-click="updateSelection=function ($event,item.id)">

JS:

  

$scope.selected =[];

        var updateSelected=function (action,id) {
            if (action == 'add' && $scope.selected.indexOf(id) == -1){
                $scope.selected.push(id);
            }
            if (action == 'remove' && $scope.selected.indexOf(id) != -1){
                var idx=$scope.selected.indexOf(id);
                $scope.selected.splice(idx,1);
            }
            //console.log($scope.selected)
        }
        $scope.updateSelection=function ($event,id) {
            var checkbox = $event.target;
            var action=(checkbox.checked ? 'add' :'remove');
            updateSelected(action,id);
        }
        $scope.isSelected=function (id) {
            return $scope.selected.indexOf(id) >= 0;
        }
        $scope.alldelete=function () {
            console.log('将选中的开始修改status:'+$scope.selected);
            var data={
                arr:$scope.selected
            }
           productService.updateAllselect.save(data,function (response) {
               if (coreService.okStatus(response)) {
                   logger.logSuccess("操作成功");
                   $scope.loadPage();
               } else {
                   logger.logError("操作失败");
               }
           }, function(err) {
               logger.logError("系统错误");
           })
        }
contrl:

          

@RequestMapping(value = "/updateAllselect", method = RequestMethod.POST)
	public @ResponseBody BaseModel<ProductDetailVO> updateAllselect(){
		BaseModel<ProductDetailVO> res = new BaseModel<>();
		JSONObject param = this.convertRequestBody();
		JSONArray arrays=param.getJSONArray("arr");
		List list=new ArrayList();
		for (int i=0;i<arrays.size();i++){
			list.add(arrays.get(i));
		}
		productService.updateAllselect(list);
		return res;
	}
流程:界面上将选中的数据id传到js中,存入到一个jsonArray中,然后在点击修改的时候触发函数将集合传递到controller层中,将JSONaArray转换成ArrayList,获取需要修改的ID,Service层不再介绍。


由于对于前端的知识不太足够,目前是初步的简单实现,但是感觉代码有些不太好,后面会继续优化。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AngularJS是一种用于构建Web应用程序的开源JavaScript框架,而zTree是一个基于jQuery的树状结构插件。AngularJS和zTree可以结合使用来创建一个具有树形结构的交互式页面。 AngularJS使用其强大的数据绑定和指令系统来处理页面的渲染和逻辑控制,而zTree则可以帮助我们以树状结构展示和管理数据。通过将这两者结合在一起,我们可以实现一个具有树形结构的动态页面,可以根据所选节点的变化来展示对应的数据。 使用AngularJS与zTree的过程如下: 1. 引入必要的依赖:在项目中引入AngularJS和zTree的相关文件,例如angular.min.js和ztree.js。 2. 初始化AngularJS应用程序:在HTML页面中使用ng-app指令来初始化AngularJS应用程序。 3. 创建树形结构的容器:在HTML页面中创建一个容器元素,用来展示zTree的树形结构。 4. 使用AngularJS指令来加载和渲染zTree: 在AngularJS应用程序中使用自定义的指令来加载和渲染zTree。可以定义一个指令来处理zTree的初始化和数据加载,并将zTree的实例绑定到$scope中。 5. 处理zTree的事件和交互:通过使用AngularJS的数据绑定,我们可以将zTree的节点选择事件绑定到$scope中的一个函数上,以便在节点选择时触发相应的逻辑。 通过结合AngularJS和zTree,我们可以轻松地创建一个具有树形结构的页面,实现数据的展示和交互。这对于需要展示层次结构数据的应用程序来说是非常有用的,例如文件浏览器或组织架构图等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值