Odoo 14 更改 Javascript 中的输入值

Odoo 14 Change value of input in Javascript

我正在从 python 到 returns json 调用 api 到 javascript 函数。返回数据时,我使用 jquery 设置输入字段的值。但是当保存表单时,字段值没有被保存。解决办法是什么?提前致谢。

$.each(data['payload'], function(key, val) {
    let el = $('[name='+key+']');
    el.val(val);
});

有时网站仅将表单字段用作某些内部状态的“前端”,只要字段中的数据发生变化,这些状态就会同步。

当用户更改字段的内容时,会触发 change 事件。如果您以编程方式更改值,则不会发生这种情况,因此侦听更改的代码不会拾取此类更改。

要解决此问题,您可以在修改字段值后手动触发字段上的 change 事件。您似乎正在使用 jQuery,在那里您可以像这样简单地使用 change() 方法:

el.val(val).change()
           ^^^^^^^^^