标题中把问题描述的很模糊,重新说下需求。
1、需求:子网格+checkbox多选。
(1)子网格:
实例:http://www.jeasyui.net/tutorial/45.html
在table中创建子网格,如上面的实例那样。
(2)checkbox多选。
现在双击某行可以直接选择这一行,也可以使用checkbox进行多个选择。
(3)将两者合并,可以checkbox多选,又可以点击"+"查看子网格。
2、目前实现的功能。
(1)可以checkbox多选。
(2)查看子网格。官方使用的是php获取数据。如果使用了php,就无法实现checkbox多选了。
3、问题:
(1)能不能使用aspx的Page_Load返回json数据,代替php。
(2)获取用别的思路解决问题。
这是EasyUI的创建子表格的js部分代码。这里面的获取数据是第9行,使用的是php。我现在用的是WebForm,不知道怎么获取数据了。
如果你是页面加载完成后加载的数据到表格,则在Jquery加载事件中通过ajax方法调取后台方法,后台方法用一般处理程序,如果在Page_load中的话比较麻烦。从一般处理程序中返回的数据格式是json格式的字符串,在ajax方法的回调函数中再讲返回字符串转成json对象,随之就可以做你想做的动态改变表格内容、行操作
http://www.jeasyui.com/tutorial/datagrid/datagrid22_demo.html
这是easyUI的官网示例,用php获取数据的。
我不会,刚才该的用ajax获取数据失败了,数据没出来。
@我有我奥妙: 我是不是这样理解,你想用easyui来去数据,但是没取出来,或者是你根本就没有从服务器端但会数据或格式不正确的数据。关于easyui绑定数据的方法,建议你去官网多看看它生成数据的格式,这种格式有误的话编译器是不会通知你的,自能靠一行一行代码去找。
@程序人生,永无止境: 嗯,好吧。
@我有我奥妙: 才发现打了好多错别字:)
ajax+一般处理程序
$("+号").click(function(){
$.ajax({
url:"",
success:function(data){
var table=$('<table>')
foreach data
table.append(...);
$(当前行).insertAfter($('<tr>').append(table));
}
});
});
追加的table的数据怎么赋值啊,我就会repeater这样的控件。
@我有我奥妙: 不会,多百度一下。就会了
@calvinK: 一直在无具体思路的百度着,希望来个大神给我指条明路。
@我有我奥妙:
服务端返回数据会不会,ajax请求数据会不会,jquery 循环数据生成table会不会