JQuery通过AJAX从后台获取信息显示在表格上并支持行选中


Posted in Javascript onSeptember 15, 2015

不想用Easyui的样式,但是想要他的表格功能,本来一开始是要到网上找相关插件的,但是没找到就开始自己写,没想到这么简单。

后台代码:(这个不重要)

public ActionResult GetDictTypes()
{
  var data = from a in dbo.DictTypes
        select new DictTypeListViewModel
        {
          ID = a.ID,
          Name = a.Name,
          LastChangeUser = a.LastChangeUser,
          LastChangeDate = a.LastChangeDate,
          Remark = a.Remark
        };
  return Json(data.ToList());
}

页面代码:

<table class="table" id="DictTypeTable">
 <thead>
  <tr>
   <th>ID</th>
   <th>标题</th>
   <th>简介</th>
  </tr>
 </thead>
 <tbody class="sel"></tbody>
</table>

javascript代码:(需要在 $(document).ready(function ($){ } 里调用)

function ShowDictType() {
  $('#DictTypeTable').children('tbody').empty();
  $.ajax({
    url: GetDictTypes_URL,
    type: 'post',
    dataType: 'json'
  })
   .done(function (data) {
     var tbody = "";
     $.each(data, function (index, el) {
       var tr = "<tr>";
       tr += "<td>" + el.ID + "</td>";
       tr += "<td>" + el.Name + "</td>";
       tr += "<td>" + el.Remark + "</td>";
       tr += "</tr>";
       tbody += tr;
     });
     $('#DictTypeTable').children('tbody').append(tbody);
     BindDictTypeTableEvent();//这里是绑定事件
   })
   .fail(function () {
     alert("Err");
   });
}

要在表格生成之后再绑定事件:

function BindDictTypeTableEvent() {
  $('#DictTypeTable tbody.sel').children('tr').click(function (event) {
    $(this).siblings('tr').removeClass('active');//删除其他行的选中效果
    $(this).addClass('active');//增加选中效果
    var id = $(this).children('td:eq(0)').text();//获取ID
    ShowDictData(id);//操作代码,这里是显示另一个表格数据
  });
}

最后这里是获取选中条目ID的代码:

function GetTypeTableSelectId() {
  return $('#DictTypeTable tbody.sel tr.active td:eq(0)').text();
}
Javascript 相关文章推荐
用js实现计算加载页面所用的时间
Apr 02 Javascript
Javascript获取数组中的最大值和最小值的方法汇总
Jan 01 Javascript
JavaScript实现点击按钮字体放大、缩小
Feb 29 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
Jun 23 Javascript
Angular和百度地图的结合实例代码
Oct 19 Javascript
js实现登录验证码
Dec 22 Javascript
详解JavaScript RegExp对象
Feb 04 Javascript
vue.js单页面应用实例的简单实现
Apr 10 Javascript
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
Jul 08 jQuery
vue基于Element构建自定义树的示例代码
Sep 19 Javascript
JS实现简单的抽奖转盘效果示例
Feb 16 Javascript
uniapp开发打包多端应用完整方法指南
Dec 24 Javascript
jQuery实现图片轮播特效代码分享
Sep 15 #Javascript
jQuery实现的淡入淡出二级菜单效果代码
Sep 15 #Javascript
jQuery带进度条全屏图片轮播特效代码分享
Jun 28 #Javascript
JQuery实现图片轮播效果
Sep 15 #Javascript
jQuery实现可展开合拢的手风琴面板菜单
Sep 15 #Javascript
jquery带有索引按钮且自动轮播切换特效代码分享
Sep 15 #Javascript
jquery图片轮播特效代码分享
Apr 20 #Javascript
You might like
php检测文件编码的方法示例
2014/04/25 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
2020/01/22 PHP
JavaScript中关于indexOf的使用方法与问题小结
2010/08/05 Javascript
Jquery拖拽并简单保存的实现代码
2010/11/28 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
使用Javascript简单实现图片无缝滚动
2014/12/05 Javascript
JavaScript时间操作之年月日星期级联操作
2016/01/15 Javascript
JavaScript根据CSS的Media Queries来判断浏览设备的方法
2016/05/10 Javascript
关于Javascript中defer和async的区别总结
2016/09/20 Javascript
详解Vue.js 2.0 如何使用axios
2017/04/21 Javascript
用p5.js制作烟花特效的示例代码
2018/03/21 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
vue中element 上传功能的实现思路
2018/07/06 Javascript
vue中使用props传值的方法
2019/05/08 Javascript
在vue中利用v-html按分号将文本换行的例子
2019/11/14 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
vue element 关闭当前tab 跳转到上一路由操作
2020/07/22 Javascript
vue中实现弹出层动画效果的示例代码
2020/09/25 Javascript
python实现的各种排序算法代码
2013/03/04 Python
Python创建模块及模块导入的方法
2015/05/27 Python
Python实现的选择排序算法示例
2017/11/29 Python
Python内存管理实例分析
2019/07/10 Python
Python迭代器iterator生成器generator使用解析
2019/10/24 Python
Net-A-Porter美国官网:全球时尚奢侈品名站
2017/02/11 全球购物
Lee牛仔裤澳大利亚官网:美国著名牛仔裤品牌
2017/09/02 全球购物
亚马逊墨西哥站:Amazon.com.mx
2018/08/26 全球购物
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
自我鉴定总结
2014/03/24 职场文书
工作鉴定评语
2014/05/04 职场文书
法人委托书
2014/07/31 职场文书
Python 线程池模块之多线程操作代码
2021/05/20 Python
python 实现体质指数BMI计算
2021/05/26 Python
SQL Server2019安装的详细步骤实战记录(亲测可用)
2022/06/10 SQL Server