Используйте один селектор jquery для нескольких регионов - PullRequest
0 голосов
/ 28 апреля 2019

У меня есть динамическое действие с выбором типа селектора Jquery.В разделе «Динамические действия» ниже приведен код для получения значения идентификаторов данных из 3 различных регионов.

    var total = 0;
    var tot_cal = 0;
    var tot_carbo = 0;
    var tot_protein = 0;
    var tot_fat     = 0;
    var elements = document.getElementsByClassName('chk');
    for (var i=0; i<elements.length; i++) {
        $checkBox = $(elements[i]);
        if ($checkBox.is(':checked')) {
            var id = $checkBox.attr("id");
            var l = document.getElementById("listid" + id);
            var qty = l[l.selectedIndex].value; //$list.value;
            var price = $('#'+id).attr("data-price");
            total += (parseInt(qty) * parseInt(price));

            // you can use the below values to check the totals are wokring

                      console.log('qty '+qty);
            console.log('price ' + price);
            console.log('total',total);


                      // Set Calories       
            var cal  = $('#'+id).attr("data-cal");
                      tot_cal += parseInt(cal);

                     // console.log ('cal' + cal);
                     // console.log ('tot_cal' + tot_cal);

            var carbo = $('#'+id).attr("data-carbo");
                      tot_carbo +=parseInt(carbo);


            var fat = $('#'+id).attr("data-fat");
                      tot_fat +=parseInt(fat);
            apex.item( "P21_FAT" ).setValue(tot_fat);                   


            var protein = $('#'+id).attr("data-protein");
                      tot_protein += parseInt(protein);


            }

        }
 apex.item( "P21_TOTAL" ).setValue(total);
 apex.item( "P21_CALORIES" ).setValue(tot_cal);
 apex.item( "P21_CARBOHYDRATE" ).setValue(tot_carbo);
 apex.item( "P21_FAT" ).setValue(tot_fat);  
 apex.item( "P21_PROTEIN" ).setValue(tot_protein);

Я выбираю значения данных из 3 различных регионов, в качестве которых PLSQL Dynamic Contents имеет одинаковые имена идентификаторов данных во всехрегионы.Проблема в том, что когда я запускаю страницу и регион отображается, значения данных повторяются от первого региона до остальных двух регионов.Если в первом регионе дата-цена равна 2, то в третьем регионе она будет одинаковой.Так как я могу передать разные идентификаторы регионов одному селектору jquery, чтобы передать DA только текущую область, чтобы получить конкретные значения текущей фокусированной области, или, если есть какой-либо другой лучший способ справиться с этим, тогда поделитесь.

...