C#+Layui 动态列批量添加数据

17 篇文章 1 订阅

前端动态列代码:

 cols: [[
                { title: '#number', minWidth: 70, title: "序号", align: "center", unresize: true, templet: '#number' },
                { field: 'evaIndex', title: '评估指标', align: "center", minWidth: 200 },
                { field: 'evaContent', title: '评估内容', minWidth: 500, sort: true, align: "center" },
                { field: 'mode', title: '评价方式', minWidth: 50, align: "center" },
                { field: 'evapivot', title: '评估要点', maxWidth: 400, align: "center" },
                { field: '', title: '查看督查记录', minWidth: 100, align: "center", templet: ViewResults },
                { field: '', title: '督评结果', minWidth: 100, align: "center", templet: EvaResult },//这里
                { field: '', title: '专家评估意见', minWidth: 200, align: "center", templet: Opinion },

            ]],

效果:

在这里插入图片描述
数据模板代码:

     function EvaResult() {
            // var  result = `<a class="layui-btn layui-btn-xs" lay-event="more">--请选择-- <i class="layui-icon layui-icon-down"></i></a>`;
            var result = `<div class="layui-form" lay-filter="SelectCount">
                                  <div class="layui-input-inline">
                                  <select class="EvaSelect" name="EvaSelect" lay-filter="EvaSelect" >
                                      <option value="">--请选择--</option>
                                       <option value="优秀">优秀</option>
                                       <option value="良好">良好</option>
                                       <option value="合格">合格</option>
                                  </select>
                                  </div>
                                  </div> `;
            return result;
        }
        function Opinion() {
            result = ` <textarea lay-filter="EvaArea" type="EvaArea"  name="EvaArea" placeholder="请输入内容" class="layui-textarea EvaArea"></textarea>`
            return result;
        }

批量提交,首先需要一个提交按钮:

 <button type="submit" class="layui-btn layui-btn-primary" lay-submit lay-filter="submit" style="margin-left:1480px;" id="submit"><i class="layui-icon"></i>  提交</button>

然后写前端提交的js:

 form.on('submit(submit)', function (data) {
      //传入数组
            var EvaSelect = $(".EvaSelect");
            var Area = $(".EvaArea");


            var arr = [];
            var arr2 = [];
            for (var i = 0; i < EvaSelect.length; i++) {
                arr.push($(EvaSelect[i]).val());
            }

            for (var i = 0; i < Area.length; i++) {
                arr2.push($(Area[i]).val());
            }

              $.ajax({
               url: '@Url.Action("InsertResult")',
               type: 'post',
                  data: { SchoolId: SchoolId, EvaResult: arr, Opinion:arr2},
               success: function (result) {
                   if (result.code == 0) {
                       layer.msg("添加成功");
                       reload();
                   } else {
                       layer.alert(result.message);
                   }
               }
           });
            return false;
        });

C#后台代码:

        public JsonResult InsertResult(string SchoolId, string[] EvaResult,string[] Opinion) 
        {

            List<ResultEntity> list = new List<ResultEntity>();
            for (int i = 0; i < EvaResult.Length; i++)
            {
                if (!string.IsNullOrWhiteSpace(Opinion[i]) || !string.IsNullOrWhiteSpace(EvaResult[i]))
                {
                    ResultEntity reportEntiy = new ResultEntity
                    {
                        Id = Guid.NewGuid().ToString(),
                        SchoolId = SchoolId,
                        Year = SystemYear,
                        DistrictCode = UserInfo.DistrictCode,
                        CreateUser = UserInfo.FullName,
                        CreateTime = DateTime.Now,
                        SchoolRemark = Opinion[i],
                        Result = EvaResult[i],

                    };
                    list.Add(reportEntiy);
                }
             }
            var result = _evaluationBll.InsertResult(list);
            return Json(result);
        }
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在C# MVC项目中实现拖拽式添加数据,您需要使用JavaScript库来处理拖拽操作,并使用Ajax将数据发送到服务器以保存。下面是一个基本的实现步骤: 1. 在MVC视图中添加一个可拖拽的元素,例如一个div: ```html <div draggable="true" ondragstart="drag(event)">数据</div> ``` 2. 使用JavaScript编写drag函数,将数据放入拖拽数据传输对象中: ```javascript function drag(event) { event.dataTransfer.setData("text", event.target.textContent); } ``` 3. 在接受数据的MVC视图中添加一个可放置的元素,例如一个div: ```html <div id="dropzone" ondrop="drop(event)" ondragover="allowDrop(event)"></div> ``` 4. 使用JavaScript编写allowDrop函数和drop函数,将数据从拖拽数据传输对象中提取出来,并使用Ajax将数据发送到服务器: ```javascript function allowDrop(event) { event.preventDefault(); } function drop(event) { event.preventDefault(); var data = event.dataTransfer.getData("text"); $.ajax({ type: "POST", url: "/Controller/AddData", data: { data: data }, success: function (result) { // 处理添加成功后的响应 }, error: function (result) { // 处理添加失败后的响应 } }); } ``` 5. 在MVC Controller中添加AddData方法,处理接收到的数据并将其存储到数据库中: ```csharp [HttpPost] public ActionResult AddData(string data) { // 处理接收到的数据并将其存储到数据库中 return Json(new { success = true }); } ``` 以上是一个基本的实现步骤,您可以根据具体需求进行修改和扩展。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值