Javascript 将数据存储在不带';你没有任何内容吗?
在模板中这样做是不好的做法,还是有更好的替代方法?在我的代码中有这样一个空跨度可以吗Javascript 将数据存储在不带';你没有任何内容吗?,javascript,jquery,html,Javascript,Jquery,Html,在模板中这样做是不好的做法,还是有更好的替代方法?在我的代码中有这样一个空跨度可以吗 我之所以问这个问题,是因为这似乎是目前唯一的方法,我可以存储关于多个项目的数据,每个项目都位于不同的模板结构中,然后使用JavaScript可靠地检索这些数据,如下所示: // get all instances of this data item - where ever they may be $('.stored-id-number').each(function (item) { var id
我之所以问这个问题,是因为这似乎是目前唯一的方法,我可以存储关于多个项目的数据,每个项目都位于不同的模板结构中,然后使用JavaScript可靠地检索这些数据,如下所示:
// get all instances of this data item - where ever they may be
$('.stored-id-number').each(function (item) {
var idNumber = $(this).data('idnumber');
// do something with ID number in relation to this item
});
在我看来,仅仅为了存储一些数据而添加一个空的
span
元素似乎很奇怪。但目前看来,这似乎是我能做到这一点的唯一可靠方法。它是为HTML5设计的。
有关data-*
的更多信息,请点击此处:
或者,您可以:
<script>
var store = {
"myStoreId": 1234,
"myOterStoreId": 9876,
}
</script>
或
编辑:也许你只是想要一个“storeid”数组?这样做:
<script>
var store = [
1234,
9876,
]
</script>
或
for(变量i=0;i
您也可以将它们与现有元素一起存储,为什么需要创建单独的跨距?您不能将其放在任何其他元素中吗?对于一般的东西。。。还是在父母身上?不管怎样,我想这并不重要。。。在代码中使用空属性没有问题。这是创建此属性的原因之一。本周不会向DOM添加额外的元素way@Satpal我需要将此作为当前模板的几个不同布局的全局操作,因此我认为针对此数据的所有实例的最佳方法是创建一个新元素。因为最有可能是它的糟糕设计导致您首先需要它。正如其他人所说,如果它是一个直接绑定到模板的标识符,那么在IMO中,您将在模板的根节点(比如div)中拥有该标识符—这样,它显然位于顶部(或与之相关的元素上)-而不仅仅是模板中的一些随机标记。您当前的备选方案对我不起作用,因为页面上可能有许多这样的元素。或者等等,也许您只需要一个StoreID数组?忘记备选方案吧。HTML是一种很好的数据存储格式。想想XML文档,当它被JavaScript使用时,没有理由将其全部添加到DOM中
for (storeId in store) {
var idNumber = store[storeId]
}
<script>
var store = [
1234,
9876,
]
</script>
store[index]
for (var i = 0; i < store.length; ++i) {
var idNumber = store[0]
}