getAttribute或具有变量属性的数据集

时间:2018-01-09 00:15:21

标签: javascript dataset getattribute

我有点困难;希望你们能帮助我。

我正在通过PHP渲染一个包含许多数据集的按钮元素 - 因此数据集和值的数量可能会因请求而异。因此,如果我有一个data-product_name,可能有几个,它的不同之处是“prev”(可以是prev或next)和数字

示例HTML:

<button id="prev_product" data-count="4" data-prev_0_product_title="name" data-prev_0_product_url="name" .... data-prev_2_product_title="name2"... data-prev_3_product_title="name3"... onclick="myFunction(prev)" >

我的javascript函数设置如下:

var get_value = document.getElementById('prev_product');

var total_products = get_value.dataset.count;


    for (counter = 0; counter < total_products; counter++){
        var single_product_title = instance+'_'+counter+'_product_url';

        var single_product_url = instance+'_'+counter+'_product_title';
        var single_thumb_url = instance+'_'+counter+'_thumb_url';
        var single_dim_length = instance+'_'+counter+'_dim_length';
        var single_dim_width = instance+'_'+counter+'_dim_width';
        var single_dim_height = instance+'_'+counter+'_dim_height';


        var prod_parameters = {};

        prod_parameters[counter] = {
                product_title   : get_value.dataset.single_product_title ,
                product_url     : get_value.dataset.single_product_url,
                thumb_url       : get_value.dataset.single_thumb_url,
                dim_length      : get_value.dataset.single_dim_length,
                dim_width       : get_value.dataset.single_dim_width,
                dim_height      : get_value.dataset.single_dim_height
            };
}

当我在console.log中调用prod_parameters时,所有键都输出正确,但值为“Undefined”

如果我调用数据集。“实际名称”,这可以正常工作。但是,我需要这个函数来处理变量和循环。

我也尝试过使用getAttribute()函数,也没有运气。注意,所有single_product_'name'都是字符串,我已经证实了这一点。

请帮忙,

谢谢!

0 个答案:

没有答案