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

I want to call a javascript on a button click, I tried a lot of examples and it didn't work. The button needs a name and the associated functions run on the server sides, I want the event to run on the client side only.

形象
丢弃
编写者 最佳答案

Here is the solution using owl framework https://github.com/binyama/button_to_call_js_odoo.git

形象
丢弃
最佳答案

To call a JavaScript function when a button is clicked in Odoo, you can use the onclick attribute of the button element and specify the name of the function you want to call. For example:



You can also use the qweb template engine to define the button in your XML file and bind the onclick event to a function in your JavaScript file. For example:









   

Then in your JavaScript file, you can define the myFunction function:


Copy code

odoo.define('my_module.my_javascript_file', function (require) {

    "use strict";


    var core = require('web.core');

    var _t = core._t;


    function myFunction() {

        console.log("Button clicked!");

    }


    return {

        myFunction: myFunction,

    };

});

You can also use the $.Event() function to trigger the button click event in your JavaScript code:


Copy code

$('button').trigger('click');

Keep in mind that you need to make sure that your JavaScript file is loaded on the page before you try to call any of the functions defined in it. You can do this by adding a dependency on your JavaScript file in the depends attribute of your module's manifest file

形象
丢弃
编写者

I can't see the pictures you upload can you do it again?

相关帖文 回复 查看 活动
1
4月 24
1642
0
1月 24
1337
1
9月 23
2648
2
4月 23
4743
3
3月 25
3146