主页 > 知识库 > Ajax实现动态加载数据

Ajax实现动态加载数据

热门标签:电子围栏 团购网站 Linux服务器 银行业务 Mysql连接数设置 科大讯飞语音识别系统 服务器配置 阿里云

前言:

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实现动态加载数据》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266