跳至内容
菜单
此问题已终结
2 回复
5273 查看

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
18530
0
4月 16
3341
1
7月 25
2371
2
5月 24
3132
1
2月 24
1756