Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
6804 Vistas

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.

Avatar
Descartar
Autor Mejor respuesta

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

Avatar
Descartar
Mejor respuesta

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

Avatar
Descartar
Autor

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

Publicaciones relacionadas Respuestas Vistas Actividad
1
abr 24
1313
0
ene 24
1049
1
sept 23
2286
2
abr 23
4302
3
mar 25
2801