我正在尝试为视频广告构建一个数据库。主页面是一个斑点列表,您可以检查它们并进行修改。我想要做的是建立一个购物车系统,其中被检查的地点的ID被自动添加到购物车并存储为cookie。这样,使用可以浏览多个页面,同时仍然可以检查所有内容。
到目前为止,我在每个位置都有一个复选框,当检查时调用一个函数,该函数将复选框的id添加到数组并将其存储为cookie。
我可以通过jquery检索cookie。我需要做的是在循环遍历斑点并打印它们时,检查该点是否在cookie中,所以我可以通过php将其设置为已检查或不通过。这可能吗?有没有更好的方法来实现这一目标?
这是我到目前为止所拥有的。
$(document).ready(function(){
var checkedItems = [];
$('.spotCheck').click(function(){
var currentID = this.id;
checkedItems.push(currentID);
updateCookie();
});
function updateCookie(){
$.cookie('itemList',checkedItems);
}
$('#mainContainer').click(function(){
$('#textInCenter').html($.cookie('itemList') );
});
});
单击该复选框将ID添加到数组checkedItems,然后单击mainContainer使其可见,这样我就可以看到数组中当前有哪些项目。我可以浏览页面,并且cookie保留在阵列中(现在没有办法删除它们,但我现在并不担心)。
那么当我打印斑点列表时,如何检查数组以查看是否存在id?
答案 0 :(得分:1)
根据您的要求,我认为这对您有用:
for (var i = 0; i < checkedItems.length; i++)
{
var elm = $('#' + checkedItems[i]);
if (elm.length > 0)
{
//element with the id exists.
elm.attr('checked', true);
}
}