如何使用jQuery's .data()函数保存两个变量?
How can I save two variables with jQuery's .data() function?
当我执行以下脚本时,警报中只显示一个值:
<script>
window.onload = function () {
var num = 15;
for (var i = 0; i < 10; i++) {
$('<tr style="background-color: aqua" id = ' + i + '></tr>').appendTo("table");
for (var j = 0; j < 10; j++) {
num++;
$('<td id ='+num+'></td>').appendTo("#"+i);
$('<button>S</button>').data("field", i, j).appendTo("#" + num);
}
}
$('td').on('click', 'button', function () {
var d = $(this);
alert(d.data("field")); // here alert shows one variable
});
}
</script>
如何在元素的数据中存储两个值?也许我可以发送一个数组?
可以设置为object
或array
。
$('<button>S</button>').data("field", [i,j] ).appendTo("#" + num);
并使用
提醒他们alert( d.data("field").join(',') ); // here alert shows one variable
根据注释"调用join(",")实际上是不必要的,数组实现的toString()的覆盖已经执行了这个操作。"。所以你们都可以直接
alert( d.data("field") );
在http://jsfiddle.net/xhPjh/上查看
使用jQuery数据方法存储的数据可以是一个对象。所以你可以这样存储这些值:
$('<button>S</button>').data("field", { i: i, j: j});
然后像这样再读一遍:
var d = $(this),
field = d.data("field");
alert(field.i);
alert(field.j);
你也应该考虑使用jQuery的ready方法来代替window.onload
。
相关文章:
- 保存两个模型(属于第三个模型)和一个提交
- rails上的两个保存按钮的功能略有不同
- 如何保存带有两个图像的画布
- 组合两个脚本以在所有浏览器上保存Google图表时出现问题
- 有两个html页面.当我从下一页恢复到第一页时,我希望保存第一页的数据状态
- indexedDb-使用两个独立的密钥(本地和服务器ID/联机和脱机)进行保存/更新
- 同时保存两个表单MVC 3
- JavaScript/PowerShell:比较两个文件并将结果保存到文本文件
- 调整两个图像并保存画布
- 如何连接两个数字与保存整数属性JavaScript
- 如何动态保存两个关联的值到一个数组中,并在js中访问它们
- 如何从本地存储中保存和加载带有两个angular2组件的页面
- 如何为两个嵌套属性保存id
- 使用javascript重叠两个svg,并保存文件
- 如何使用plupload保存两个不同尺寸的图像
- 我在一个页面上有两个按钮,保存和完成.我正在为两个输入字段寻找两个不同的警报
- 两个元素的求值保存相同的数据
- 如何使用jQuery's .data()函数保存两个变量?
- 两个下拉列表和保存在数据库与PHP
- 两个问题,如何在html中创建调查结果页面?以及我如何保存用户输入从表格在excel