jquery给表格动态添加删除行后如何获取数据

jquery给表格动态添加删除行后如何获取数据,第1张

一共有两种方式获取:

1当你点击添加按钮的时候。直接从后面取出表格和数据。下面付ajax方法。

2把你的数据保存在隐藏表单中,点击添加按钮的时候在从隐藏表单中把数据取出来添加到表格中。

$ajax({

type: "get",

cache:false,//设置缓存为FALSE

url: url//须要处理的后台页面

beforeSend: function(XMLHttpRequest){

//在显示之前你要干什麼

//ShowLoading();

},

//显示成功后你要做什麼动作,data是你重后台提交的数据textStatus是状态,这两个

值可以重命名比如(a,b)

success: function(data, textStatus){

$("tb")html(date)

});

},

//完成后你要干什麼,和成功后的区别是:不管成不成功都会到这个阶段。

complete: function(XMLHttpRequest, textStatus){

//HideLoading();

}

});

获取修改之后表格中的值!

这几天找到了这个插件,感觉很好!

var data = [],

container = documentgetElementById('example'),

hot = new Handsontable(container, {

data: data,

minSpareRows: 20,//显示空白行数

colHeaders: true,//是否显示表格头部字母表

contextMenu: true,//右键显示更多功能

   rowHeaders: true,//是否显示列数字

manualColumnResize: true,//自定义列高

manualRowResize: true,//自定义行宽

manualColumnMove: true,//是否能拖动列

manualRowMove: true,//是否能拖动行

columnSorting:true, //false/对象 //当值为true时,表示启用排序插件

// className: "htCenter", //表格文字对其方式 htCenter,htLeft, htCenter, htRight, htJustify, htTop, htMiddle, htBottom

// currentRowClassName: 'currentRow',//定义th与td样式,更精准的锁定点击点

// currentColClassName: 'currentCol',

   // autoWrapRow: false,

   colWidths: 110,//列宽px,定义之后文字自动换行

columns: [//每一个对象对应一列

{

// data: '列号自定义名称',//列号自定义名称,使用colHeaders之后不起作用

// readOnly: true,//是否是可读

type: 'numeric',

    format: '0,000',// format: '$0,000',

    language: 'en',

},

{

type: 'date',

dateFormat: 'YYYY-MM-DD',

correctFormat: true,

defaultDate: '2008-05-01',

},{对应每个标题},{},{},{},{},{},{},{},

],

});

用了之后感觉对表格的功能上制定非常简单。

但是就是在获取值上没找到方法,不过多次百度之后,基本上网上就是讲了两个地方!

一个是核心方法(hot方法名)就能得到值。

另一个就是 钩子事件

我还没来得及弄清楚钩子上的事件问题,不过 第一个事件已经可以实现那个功能了,afterChange (changes: Array, source: String)  。将此钩子事件用上即可!

怎么用? 我需要自己看看!!

-------------------------------------------------------------------------标记

比如设置table的id为tab

var trHTML = "<tr><td></td></tr>"

$("#tab")append(trHTML);//在table最后面添加一行

$("#tab tr:eq(2)")after(trHTML); // 在table的第3行后面添加一行这样就可以进行动态的添加行了,至于你是通过什么事件来动态添加那就看你自己的意思了,通过button或者div之类的点击事件添加,只要把上面的两行代码放进去就ok,注意,要把var trHTML那行代码放进添加事件里面,不然不管点击多少下,都只能添加一行

$(function() {

$(":button")click(function() {

var tr = "<tr><td>new</td></tr>";

//$("table")append(tr);

$("table tr:eq(2)")after(tr);

});

});

这是我测试用的代码,你可以运行看看

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库( 或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档 *** 作、事件处理、动画设计和Ajax交互。

jQuery的模块可以分为:入口模块、底层支持模块和功能模块。其核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 60+、FF 15+、Safari 20+、Opera 90+等。

使用easyui的edatagrid(可编辑数据表格)来实现

$('#tt')edatagrid({   

    url: 'datagrid_datajson', 

    saveUrl: ,   

    updateUrl: ,   

    destroyUrl:    

});

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/12175618.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存