CMS Development

FurqanAli
参加者

How to get data for the next and previous index in the for loop in hubl for setting conditions?

解決

Hi there,

I'm trying to set conditions in Hubl under for loop for the repeated fields.  You can see my code below under the script tag where I'm using different values:

<script>
function showVal(newVal){
if(newVal <= {{ module.free_slab_limit }}){
jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("{{free_text.freeText}}");
jQuery(".workspace_members span").text(newVal);
}
{% for item in module.step_fields %}
else if( newVal>= {{item.step_value}} && (Here I need to use the condition for next and previous index)){
jQuery(".workspace_members span").text("{{ item.step_text }}");
}
{% endfor %}
else{
jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("$" + (newVal*{{ module.per_user_cost }}));
jQuery(".workspace_members span").text(newVal);
}
}
</script>

Thanks for the help as well. 

0 いいね!
1件の承認済みベストアンサー
MBERARD
解決策
トップ投稿者 | Elite Partner
トップ投稿者 | Elite Partner

How to get data for the next and previous index in the for loop in hubl for setting conditions?

解決

Hi @FurqanAli ,

is that something like so you want to perform?

<script>
    function showVal(newVal) {
        if (newVal <= {{ module.free_slab_limit }}) {
            jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("{{ free_text.freeText }}");
            jQuery(".workspace_members span").text(newVal);
        }
        {% for item in module.step_fields %}
            {% if loop.first %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 + 1].step_value }})) { // only next value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% elif loop.last %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 - 1].step_value }})) { // only prev value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% else %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 - 1].step_value }} && {{ module.step_fields[loop.index0 + 1].step_value }})) { // prev & next value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% endif %}
        {% endfor %}
        else {
            jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("$" + (newVal * {{ module.per_user_cost }}));
            jQuery(".workspace_members span").text(newVal);
        }
    }
</script>

 

Kind regards,

 

Matthieu

matthieu.berard@markentive.com

元の投稿で解決策を見る

3件の返信
MBERARD
解決策
トップ投稿者 | Elite Partner
トップ投稿者 | Elite Partner

How to get data for the next and previous index in the for loop in hubl for setting conditions?

解決

Hi @FurqanAli ,

is that something like so you want to perform?

<script>
    function showVal(newVal) {
        if (newVal <= {{ module.free_slab_limit }}) {
            jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("{{ free_text.freeText }}");
            jQuery(".workspace_members span").text(newVal);
        }
        {% for item in module.step_fields %}
            {% if loop.first %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 + 1].step_value }})) { // only next value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% elif loop.last %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 - 1].step_value }})) { // only prev value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% else %}
                else if (newVal >= {{ item.step_value }} && ({{ module.step_fields[loop.index0 - 1].step_value }} && {{ module.step_fields[loop.index0 + 1].step_value }})) { // prev & next value
                    jQuery(".workspace_members span").text("{{ item.step_text }}");
                }
            {% endif %}
        {% endfor %}
        else {
            jQuery(".pricing-columns__item.featured.alternated p.pricing-columns__price").text("$" + (newVal * {{ module.per_user_cost }}));
            jQuery(".workspace_members span").text(newVal);
        }
    }
</script>

 

Kind regards,

 

Matthieu

matthieu.berard@markentive.com

FurqanAli
参加者

How to get data for the next and previous index in the for loop in hubl for setting conditions?

解決

Thanks for clarifying many things in your code related to indexes and setting conditions under the loop; this is something I was looking for. @MBERARD 

0 いいね!
MBERARD
トップ投稿者 | Elite Partner
トップ投稿者 | Elite Partner

How to get data for the next and previous index in the for loop in hubl for setting conditions?

解決

Happy to helped 😊

0 いいね!