تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
5280 أدوات العرض

Hello Guys!!!

I want to change the position of the field job_id in the hr_contract form.

So that, i tried this:

  <xpath expr="//field[@name='job_id']" position="attributes">

<attribute name="invisible">True</attribute>

</xpath>

and then:

   <xpath expr="//field[@name='job_id']" position = "replace">

       <field name="job_id" string="Fonction"/>

</xpath>

But when i try to apply an onchange on it, nothing happend :/

Can anyone help me to know how to change its position please.

Thaks a lot in advance.

Best Regards.

الصورة الرمزية
إهمال
أفضل إجابة

Hi Drees,

Actually when you are replacing the field, its getting replaced correctly, but the new field is not having any "onchange" event associated with it.

Thats why on change is not triggering.

So, Just replace the field with the previous one and check out the onchange attribute in original field and keep that in new one too.

<xpath expr="//field[@name='job_id']" position = "replace">

       <field name="job_id" string="Fonction" onchange="<function in original field>"/>

</xpath>


Hope it helps

الصورة الرمزية
إهمال
أفضل إجابة

Hello,

If you want to change position of a field then don't use invisible attribute.It will only invisible that field.

You applied attrs="invisible" and also added field on a position where you want. So field is there in form view 2 times which causes the problem. So instead of position="attribute" , replace it with blank.

Then add field where you want to add and apply onchange.

<xpath expr="//field[@name='job_id']" position="replace"> 

</xpath>

<xpath expr="//path_where_you_want_to_add_field" position="after"> 

 <field name="job_id" string="Fonction" on_change="your_onchange_method"/>

</xpath>

Thanks

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
4
ديسمبر 23
18531
0
أبريل 16
3343
1
يوليو 25
2371
2
مايو 24
3136
1
فبراير 24
1757