跳至內容
選單
此問題已被標幟
2 回覆
5282 瀏覽次數

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
12月 23
18531
0
4月 16
3343
1
7月 25
2371
2
5月 24
3136
1
2月 24
1757