今天在二次开发的时候,看到源代码的新闻列表是Aajax获取的,点击新闻内容触发编辑,我没有看到新闻Id却能查到信息。

观看$.ajax遍历赋值过程中,$tr("<a>新闻内容</a>").data("data" , obj)绑定了此条新闻的JSOn数据,在编辑时候只要$.data("data") 就能获取到此数组

1.$data的基本语法

data([key],[value])

在元素上存放或读取数据,返回jQuery对象。

当参数只有一个key的时候,为读取该jQuery对象对应DOM中存储的key对应的值,值得注意的是,如果浏览器支持HTML5,同样可以读取该DOM中使用 data-[key] = [value] 所存储的值。参见最后一个示例。

当参数为两个时,为像该jQuery对象对应的DOM中存储key-value键值对的数据。

如果jQuery集合指向多个元素,那将在所有元素上设置对应数据。 这个函数不用建立一个新的expando,就能在一个元素上存放任何格式的数据,而不仅仅是字符串。

V1.4.3 新增用法, data(obj) 可传入key-value形式的数据。

2.$.data的实例子

2.1

在一个DIV上存放数据:<div><div>

Jquery代码;

$("div").data("blah");  // undefined
$("div").data("blah", "hello"); // blah设置为hello
$("div").data("blah"); // hello
$("div").data("blah", ); // 设置为86
$("div").data("blah"); //
$("div").removeData("blah"); //移除blah
$("div").data("blah"); // undefined

2.2

在一个div上存取名/值对数据:<div><div>

Jquery代码;

$("div").data("test", { first: , last: "pizza!" });
$("div").data("test").first //16;
$("div").data("test").last //pizza!;

3.我见过的

赋值:

                        $.each(data, function (n, obj) {
console.log(obj);
if (currentStatus == "mReg") {
// fillReg(obj);
$("#task-table").append("<tr class='mReg'><th></th><th>" + obj.t.time + "</th><th colspan='3'>" + obj.t.rate + "%</th><th colspan='2'>" + obj.t.worktime + " </th></tr>");
$.each(obj.lt, function (n, data) {
// console.log(data);
var tr = $("<tr><th>" + (n + ) + "</th><th ><a href='#' onclick='editTask(this)'> " + data.content + "</a></th><th>" + data.rate + "</th><th> " + data.project + "</th><th> " + data.category + "</th><th>" + data.worktime + "</th><th>" + data.endTimeSta + "</th></tr>"); tr.find("a").data("data", data); //------------重点
$("#task-table").append(tr); })
}
else
{
fillCou(obj);
} });

编辑:

        var editTask = function(sender) {
var obj = $(sender).data("data");
//获取任务信息
currentId = obj.id;
$('#content').val(obj.content);
$('#project').val(obj.project);
$('#category').val(obj.category);
$("#worktime").val(obj.worktime);
$("#endtime").val(obj.endtime);
$("#rateO").val(obj.rate);
$("#rateO").text(obj.rate+"%");
}

随机推荐

  1. MTK 常见的编译命令

    1: ./mk n(r) kernel; ./mk bootimage;当修改build-in 到kernel相关代码时,要使用此命令,具体文件参考如下: alps/kernel/ alps/medi ...

  2. Android 创建一个新的Activity

    本文转载自:http://www.cnblogs.com/wuyudong/p/5658020.html 新建一个项目,创建一个java类,继承自Activity 新建一个Android.xml文件: ...

  3. iOS 滑动隐藏导航栏-三种方式

    /** 1隐藏导航栏-简单- */    self.navigationController.hidesBarsOnSwipe = YES; /** 2隐藏导航栏-不随tableView滑动消失效果 ...

  4. 最受欢迎的Java第三方库

    前言 翻译自programcreek: 典型的Java项目通常会依赖一些第三方库,本文总结了一些最受欢迎的Java库,这些类库在各种应用程序中被广泛使用: 当然,Java SDK是最广泛使用的Java ...

  5. 用SQL语句建库建表建约束(用SQl语句在指定盘符创建文件夹)

    一 :创建数据库 创建一个数据文件和一个日志文件(MySchool) create database MySchoolon primary      --默认属于primary主文件组,可省略(--数 ...

  6. ADO。Net(二)——防止SQL注入攻击

    规避SQL注入 如果不规避,在黑窗口里面输入内容时利用拼接语句可以对数据进行攻击 如:输入Code值 p001' union select * from Info where '1'='1 //这样可 ...

  7. Spark SQL 官方文档-中文翻译

    Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...

  8. CentOS 7 网卡子接口的创建

    OS:CentOS 7 在linux上创建vlan需要加载802.1q模块: 1.检测OS是否已经加载802.1q模块 [root@controller ~]# modinfo 8021q filen ...

  9. asp.net服务器控件onclick带参数

    服务器控件处理参数随笔 正确: <asp:CheckBox ID="cbComplareProduct" runat="server" Text=&quo ...

  10. C++STL - vector

    对vector进行一些总结. 一些需要注意的知识点: 1.标准库vector表示对象的集合, 其中所有对象的类型都相同.因为vector中容纳着其他对象,所以也称作容器. 2.C++语言既有类模板(c ...