Как вызвать функцию при нажатии на кнопку odoo

введите здесь описание изображения Как вызвать функцию при нажатии на кнопку. Я создал кнопку и распечатал (привет на консоли). Он будет печатать, но когда я определяю функцию для простого сложения двух чисел, это дает ошибку.

Я использовал следующий код:

var FormCustomControllerMixin = {
   init: function (parent, model, renderer, params) {
       this.importEnabled = params.importEnabled;
   },

   _getLocation : function(){
       var a=10;
       var b=20;
       var c= a+b;
       console.log(c);
   },

   _bindImport: function () {
       if (!this.$buttons) {
           return;
       }
       var self = this;
       this.$buttons.on('click', '.o_button_custom_form', function () {
           console.log('Hello');
           a=self._getLocation();
         console.log(a);
       });
   }
};

Привет печатается, но сложение не выполняется.


person user_123    schedule 24.04.2018    source источник
comment
Где эти ошибки?   -  person Kenly    schedule 24.04.2018
comment
Я редактирую свой вопрос, посмотрите, пожалуйста, редактируемый. @ Zety   -  person user_123    schedule 24.04.2018
comment
До сих пор не работает...   -  person user_123    schedule 24.04.2018
comment
он не сообщает вам, что _getlocation не существует, но каково значение местоположения, проверьте, какое значение имеет значение, просто используя console.log (self .__ getlocation)   -  person Charif DZ    schedule 24.04.2018


Ответы (2)


Вы пробовали подобное?

a=_getLocation();
person Tamir Tsedev    schedule 25.04.2018

Я понял, что функция получения решения не работает внутри FormCustomCOntrollerMixin.

var a = function getLocation () {
        var a=10;
        var b=20;
        var c= a+b;
        console.log(c);
        return
    }



var FormCustomControllerMixin = {

    init: function (parent, model, renderer, params) {
        this.importEnabled = params.importEnabled;
    }
    },

    _bindImport: function () {
        if (!this.$buttons) {
            return;
        }
        var self = this;
        debugger;
        this.$buttons.on('click', '.o_button_custom_form', function () {
            var b = a();

        });
    }
};
person user_123    schedule 25.04.2018