bootstrap表格遍历_BootStrap实现带有增删改查功能的表格(DEMO详解)

本文详细介绍了如何使用BootStrap创建带有增删改查功能的表格,包括三种不同版本的实现方式,涉及表格的样式、JS和CSS代码。通过示例代码展示了如何实现表格的编辑、添加、删除功能,并提供了相应的操作事件处理。
摘要由CSDN通过智能技术生成

前言

bootstrap的表格样式,有类似EasyUI的表格,也有卡片式表格,放到移动端显示,各有千秋。但是BootStrap自带的表格是没有操作列的,网上的资源不少,但是都是比较单一、零碎,JS、CSS也经常给的不全,自己经过大概一个月左右的时间,把表格封装了一下,希望能分享给大家。

表格封装了3个版本,接下来给大家展示一下样式和代码。

版本一

1. 样式

表格布局:

2016102611003725.png

添加:添加一行新的空白代码

2016102611004926.png

修改:选中可修改的列,点击需要修改的单元格,即可变成可编辑的状态。

3222757a4fa8433f111e58ed2dd10395.png

2.代码

@using DatatableDemo.Models

@using ITOO.FreshNewReport.ViewModel

@{

Layout = "~/Views/Shared/_Layout.cshtml";

}

Bootstrap 实例 - 表格

@*表格JS*@

@*动态添加表格*@

@*添加批量删除*@

$(document).ready(function () {

$("#btnDel").click(function () {

$(":checked").parent().parent().fadeOut("show"); //隐藏所有被选中的input元素

//parent() 获得当前匹配元素集合中每个元素的父元素,

})

$("tr").mousemove(function () {

$(this).css("background", "#F0F0F0"); //鼠标经过背景颜色变为灰色

})

$("tr").mouseout(function () {

$(this).css("background", "#fff"); //离开后背景颜色回复白色

})

//全选

$("#checkAll").click(function () {

if ($("#checkAll").attr("checked") == false) {

$("input[name='checkbox']").each(function () {

$(this).attr("checked", true);

});

} else {

$("input[name='checkbox']").each(function () {

$(this).attr("checked", false);

});

}

});

});

@*添加一行新表格数据*@

function append() {

var strAppend = '

';

$("#AddFamily tbody ").append(strAppend).editableTableWidget();

}

@*表格样式CSS*@

table {

border-collapse: collapse;

border: 1px solid #FFFFFF;

}

table td {

text-align: center;

height: 30px;

font-size: 12px;

line-height: 30px;

border: 1px solid #efecec;

}

@*添加批量删除*@

@*按钮*@

@*添加按钮*@

添加

@*修改按钮*@

修改

@*删除按钮---无弹出框*@

删除

@*表格*@

姓名称谓 年龄 政治面貌电话号码 工作单位家庭住址

@*从数据库读取的数据,遍历ViewModel里面的字段并赋值*@

@foreach (FamilyInfoViewModel enStuFam in ViewData["DataList"] as List)

{

@enStuFam.Name @enStuFam.RelationShip@enStuFam.Age@enStuFam.PoliticalStatus@enStuFam.TelNum @enStuFam.WorkUnit@enStuFam.Address

}

@*创建表格*@

//绑定编辑、回车事件

$(function () {

// $('#build').click(build);//实现创建表格

$('#btnEdit').click(edit);

$('#cells, #rows').keyup(function (e) {

if (e.keyCode === 13) {

//添加存入数据库的代码

}

});

});

//将表格转成可编辑的表格

function edit(index) {

// $('#table').editableTableWidget();--效果是单击编辑按钮后,所有的都可以编辑

// $(":checked").editableTableWidget();

$(":checked").parent().parent().editableTableWidget();//整行的可以编辑

}

//转成可编辑的表格

/*global $, window*/

$.fn.editableTableWidget = function (options) {

'use strict';

return $(this).each(function () {

var buildDefaultOptions = function () {

var opts = $.extend({}, $.fn.editableTableWidget.defaultOptions);

opts.editor = opts.editor.clone();

return opts;

},

activeOptions = $.extend(buildDefaultOptions(), options),

ARROW_LEFT = 37, ARROW_UP = 38, ARROW_RIGHT = 39, ARROW_DOWN = 40, ENTER = 13, ESC = 27, TAB = 9,

element = $(this),

editor = activeOptions.editor.css('position', 'absolute').hide().appendTo(element.parent()),

active,

showEditor = function (select) {

active = element.find('td:focus');

if (active.length) {

editor.val(active.text())

.removeClass('error')

.show()

.offset(active.offset())

.css(active.css(activeOptions.cloneProperties))

.width(active.width())

.height(active.height())

.focus();

if (select) {

editor.select();

}

}

},

setActiveText = function () {

var text = editor.val(),

evt = $.Event('change'),

originalContent;

if (active.text() === text || editor.hasClass('error')) {

return true;

}

originalContent = active.html();

active.text(text).trigger(evt, text);

if (evt.result === false) {

active.html(originalContent);

}

},

movement = function (element, keycode) {

if (keycode === ARROW_RIGHT) {

return element.next('td');

} else if (keycode === ARROW_LEFT) {

return element.prev('td');

} else if (keycode === ARROW_UP) {

return element.parent().prev().children().eq(element.index());

} else if (keycode === ARROW_DOWN) {

return element.parent().next().children().eq(element.index());

}

return [];

};

editor.blur(function () {

setActiveText();

editor.hide();

}).keydown(function (e) {

if (e.which === ENTER) {

setActiveText();

editor.hide();

active.focus();

e.preventDefault();

e.stopPropagation();

} else if (e.which === ESC) {

editor.val(active.text());

e.preventDefault();

e.stopPropagation();

editor.hide();

active.focus();

} else if (e.which === TAB) {

active.focus();

} else if (this.selectionEnd - this.selectionStart === this.value.length) {

var possibleMove = movement(active, e.which);

if (possibleMove.length > 0) {

possibleMove.focus();

e.preventDefault();

e.stopPropagation();

}

}

})

.on('input paste', function () {

var evt = $.Event('validate');

active.trigger(evt, editor.val());

if (evt.result === false) {

editor.addClass('error');

} else {

editor.removeClass('error');

}

});

element.on('click keypress dblclick', showEditor)

.css('cursor', 'pointer')

.keydown(function (e) {

var prevent = true,

possibleMove = movement($(e.target), e.which);

if (possibleMove.length > 0) {

possibleMove.focus();

} else if (e.which === ENTER) {

showEditor(false);

} else if (e.which === 17 || e.which === 91 || e.which === 93) {

showEditor(true);

prevent = false;

} else {

prevent = false;

}

if (prevent) {

e.stopPropagation();

e.preventDefault();

}

});

element.find('td').prop('tabindex', 1);

$(window).on('resize', function () {

if (editor.is(':visible')) {

editor.offset(active.offset())

.width(active.width())

.height(active.height());

}

});

});

};

$.fn.editableTableWidget.defaultOptions = {

cloneProperties: ['padding', 'padding-top', 'padding-bottom', 'padding-left', 'padding-right',

'text-align', 'font', 'font-size', 'font-family', 'font-weight',

'border', 'border-top', 'border-bottom', 'border-left', 'border-right'],

editor: $('')

};

版本二

1. 样式

布局样式:

48574c95e68cfe3b4a735d7ad752a2b6.png

添加/修改:

c2249c2db20e6efbd8ab25f33f1eadd4.png

2. 代码

@using ITOO.FreshNewReport.ViewModel

@{

Layout = null;

}

数据表格编辑_大气漂亮的Bootstrap后台管理系统模板Se7en - JS代码网

版本三

1.样式

卡片式表格:

bd942f3bdcb5207cfcf2bb891d78287d.png

添加/修改 弹出一个新页面:

2016102611031127.png

2.代码

View代码:

@*按钮*@

@*添加按钮*@

添加

@*修改*@

修改

@*删除*@

@*

删除

*@

删除

开始日期结束日期毕业学校证明教师

@*

编 辑*@

Controller代码:

#region ShowEducation() 显示教育经历 王美 2015年6月5日

///

/// 显示教育经历

///

/// 教育经历Json

public JsonResult ShowEducation()

{

//创建WCF接口

IEduInfoService EduServiceShow = ServiceFactory.GetEduInfoService();

//从缓存中获取身份证号

string IdentityCardID = (String)MemcacheHelper.Get("IdentityCardID");

//调用WCF查询方法

List listEduInfo = EduServiceShow.QueryEduInfo(IdentityCardID);

//返回Json串

return Json(listEduInfo, JsonRequestBehavior.AllowGet);

}

#endregion

以上所述是小编给大家介绍的BootStrap实现带有增删改查功能的表格(DEMO详解),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

本文标题: BootStrap实现带有增删改查功能的表格(DEMO详解)

本文地址: http://www.cppcns.com/ruanjian/java/167820.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值