asp.net 30分钟掌握无刷新 Repeater

2020-05-23 06:19:20易采站长站整理


{
“__success”: <表示是否成功的布尔值, 为 true 或者 false>,
“rows”: <当前页包含行数据的 javascript 数组>,
“itemcount”: <总行数>
}
{
“__success”: true,
“rows”:
[
{ “id”: 1, “realname”: “jack”, “age”: 20 },
{ “id”: 2, “realname”: “tom”, “age”: 21 }
],
“itemcount”: 120
}

在 .NET 4.0 中可以使用匿名类型来返回 json, 比如:

[WebMethod ( )]
public static object Fill ( /* 参数 */ )
{
// …
List<object> students = new List<object> ( );
students.Add ( new {
id = 1,
realname = “jack”,
age = 20
} );
// …
return new { __success = true, rows = students.ToArray ( ), itemcount = 120 };
}

更新
删除
新建
以上 3 项由于篇幅原因无法全部列出, 如有需要请参考: http://code.google.com/p/zsharedcode/wiki/JQueryElementRepeaterDoc
行状态说明
在客户端的 javascript 脚本中, 行状态有 4 种, 分别是 unchanged 未改变, updated 更新过, inserted 新建后的行, removed 删除后的行.
排序状态说明
在客户端的 javascript 脚本中, 排序状态有 4 种, 分别是 none 无排序或按照默认排序, asc 升序, desc 降序.
设置模板
在 Repeater 的各种模板中, 可以设置 Repeater 最终显示的 html 代码, 这些 html 代码应该是完整的, 合法的, 并且不要直接使用单引号, 可以对单引号转义, 否则可能导致最终显示的不正常.
ItemTemplate
ItemTemplate 为行模板中的一种, 可以显示处于 unchanged 状态的行, 如果没有设置 UpdatedItemTemplate 或者 InsertedItemTemplate, 那么 updated, inserted 状态的行也显示在 ItemTemplate 中, 示例:

<ItemTemplate>
<tr>
<td>
#{id}
</td>
<td>
#{realname}
</td>
<td>
#{age}
</td>
<td>
/* 编辑和删除按钮 */
</td>
</tr>
</ItemTemplate>

UpdatedItemTemplate/InsertedItemTemplate
与 ItemTemplate 不同的是, UpdatedItemTemplate 和 InsertedItemTemplate 分别用于显示状态为 updated 和 inserted 的行, 主要用于采用不同样式来显示不同状态的行, 但也可以使用更简便的 je-class 来完成同样的效果, 示例:

<UpdatedItemTemplate>
<tr style=”font-weight: bold;”>
<td>
#{id}
</td>
<td>
#{realname}
</td>
<td>
#{age}
</td>
</tr>
</UpdatedItemTemplate>
<InsertedItemTemplate>
<tr style=”color: green;”>
<td>
#{id}
</td>
<td>
#{realname}