• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Ajax实现动态加载数据

    前言:

    1.这个随笔实现了一个Ajax动态加载的例子。

    2.使用.net 的MVC框架实现。

    3.这个例子重点在前后台交互,其它略写。

    开始:

    1.控制器ActionResult代码(用于显示页面)

        /// summary>
        /// 电话查询页面
        /// /summary>
        /// returns>/returns>
        public ActionResult PhoneSearch(string sql)
        {
          phoneList=从数据库查询数据;
          ViewBag.phoneList = phoneList;
          return View();
        }
    
    

    2.前台页面主要代码

    说明:这个就是要展示数据的表格,里面的字段要和你建好的模型匹配。

    table border="1" cellspacing="0" cellpadding="0" class="toLang" id="phoneTable">
                  tr>
                    th>序号/th>
                    th>公司/th>
                    th>部门/th>
                    th>小组/th>
                    th>姓名/th>
                    th>职位/th>
                    th>电话/th>
                  /tr>
                  tbody id="todeListTBODY">
                    @if (ViewBag.phoneList != null)
                  {
                    foreach (var item in ViewBag.phoneList)
                    {
                      number = number + 1;
                  tr>
                    td>@number/td>
                    td>@item.Conpany/td>
                    td>@item.Department/td>
                    td>@item.Team/td>
                     td>@item.Name/td>
                     td>@item.Position/td>
                     td>@item.PhoneNumber/td>
                      /tr>
                    }
                  }
                  /tbody>
                /table>

    3.我的查询条件

     div style="display:block;float:left; width:100%; ">
              公司:
              select class="InputTestStyle" id="company" onclick="initDeptSelect()">
                option>==请选择公司==/option>
              /select>
              部门:
              select class="InputTestStyle" id="department" onclick="initGroupSelect()">
                option>==请选择公司==/option>
              /select>
              小组:
              select class="InputTestStyle" id="group" onclick="QueryPhoneNum()">
                option>==请选择公司==/option>
              /select>
     /div>
    
    

    4.查询条件的初始化(以公司这个为例)

    4.1前台的JavaScript代码

      //打开页面的时候执行
      window.onunload = initCompanySelect();
      //初始化“公司”下拉框
      function initCompanySelect()
      {
        $.ajax({
          type: 'POST',
          url: '/Home/GetCompantListForPhone',
          dataType: 'json',
          data: { },
          success: function (data) {
            //1.清空这个下拉框的数据
            // $('#company option').remove();//也能成功实现
            $('#company').empty();
            $("#company").append($('option>' + '==请选择公司==' + '/option>'));
            //2.将返回值动态加载进下拉框,动态生成标签。
            for (i = 0; i  data.length;i++)
            {
              $("#company").append($('option >' + data[i].Conpany + '/option>'));
            }
          },
          error: function (XMLHttpRequest, textStatus, errorThown) {
            alert("操作失败!");
          }
        })
      }
    

    4.2初始化下拉框对应的ActionResult代码

    /// summary>
    /// 获取电话查询公司下拉数据
    /// /summary>
    /// returns>/returns>
    [HttpPost]
    public JsonResult GetCompantListForPhone()
    {
      
      compantList = 从数据库获取这个下拉框数据的集合;
      return Json(compantList);
    }
    

    其它两个下拉框按照这个办法完成后。就可以根据条件查询了。下面两个是对用的JavaScript和后台方法。

    5.传查询提交到后台,然后根据返回的集合重新给table赋值。

    //根据条件查询电话
      function QueryPhoneNum()
      {
        if ($('#group').val() == '==请选择小组==')
        {
          return;
        }
        number = 0;
        $.ajax({
          type: 'POST',
          url: '/Home/PhoneSearchSubmit',
          dataType: 'json',
          data: {
            company:$('#company').val(),
            dept: $('#department').val(),
            group: $('#group').val()
          },
          success: function (phoneList) {
            //1.清空这个表格的数据
            $('#todeListTBODY tr').remove();
            
            //2.将返回值动态加载进表格。
            $.each(phoneList, function (index, element) {
              number = number + 1;
              $('#todeListTBODY').prepend(function (i) {
                return "tr>" +
                   "td>" +number +
                   "td>" + element.Conpany +
                   "td>" + element.Department +
                   "td>" + element.Team +
                   "td>" + element.Name +
                   "td>" + element.Position +
                   "td>" + element.PhoneNumber +
                   "/tr>";
              })
            })
          },
          error: function (XMLHttpRequest, textStatus, errorThown) {
            alert("操作失败!");
          }
        })
      }
    

    5.1与查询数据对应的ActionResult

    /// summary>
    /// 电话查询
    /// /summary>
    /// returns>/returns>
    [HttpPost]
    public JsonResult PhoneSearchSubmit(string company, string dept, string group)
    {
      phoneList = 根据条件查询数据;
      return Json(phoneList);
    }
    
    

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • JQuery Ajax动态加载Table数据的实例讲解
    • Ajax获取数据然后显示在页面的实现方法
    • Ajax实现动态显示并操作表信息的方法
    上一篇:前端ajax的各种与后端交互的姿势
    下一篇:解决spring mvc 返回json数据到ajax报错parseerror问题
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Ajax实现动态加载数据 Ajax,实现,动态,加载,数据,