Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
2 Trả lời
4171 Lượt xem

I want to compare the javascript var with odoo's t-if. But it gives me an error.

Xml file:

<odoo>

    <data>
    <record id="product_product_inherit" model="ir.ui.view">
                <field name="name">product.template.inherit</field>
        <field name="model">product.template</field>
        <field name="inherit_id" ref="product.product_template_only_form_view"/>
        <field name="arch" type="xml">
            <field name="default_code" position="after">
                <field name="gifpath" widget="image"/>
            </field>
        </field>
              </record>

       <template id="website_sales_inh" name="webiste_sales_inherit" inherit_id="website_sale.products_item">

          <xpath expr="//span[@class='d-flex h-100 justify-content-center align-items-center']" position="replace">
        <script type="text/javascript">
            var list = document.querySelectorAll('img');

            var i;
            var imgsrc=[];
            var trigger;
            for(i=0;i<3;i++)
            {
                imgsrc[i] = list[i].src;
                list[i].addEventListener("mouseover",function()
                {
                 trigger = 1;
                });
                list[i].addEventListener("mouseout",function()
                {
                  trigger = 0;
                });
            }
        </script>
        <t t-if="trigger == 1">
                      <span t-field="product.image_1920"
                                t-options="{'widget': 'image', 'preview_image': 'gifpath'}"
                                class="d-flex h-100 justify-content-center align-items-center"/>
        </t>
           
        <t t-elif="trigger == 0">
            <span t-field="product.image_1920"
                        t-options="{'widget': 'image', 'preview_image': 'image_1024' if product_image_big else 'image_256'}"
                        class="d-flex h-100 justify-content-center align-items-center"/>

        </t>
          </xpath>

       </template>

    </data>

</odoo>

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hello,

Please try to using this way:


<t t-jquery="[t-set*='count']">

          <t t-js="ctx">

              var table = document.getElementById("tableId");

                        alert(table.offsetHeight);        

  

              <t t-if="table">

          </t>

</t>

   Regards,




Email:   odoo@aktivsoftware.com

Skype: kalpeshmaheshwari

   

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

provided template is rendered at server side (python) so you will never get the value of the variable 'trigger' 

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 8 20
9119
2
thg 7 24
1368
2
thg 6 23
42584
1
thg 12 22
3424
2
thg 12 22
4365