title: How can I check when certain form view is opened and field has changed in it on Odoo JavaScript?
body: <p>What I Have so far is basic code:</p>
  
  <pre><code>odoo.define('partner_data.res_partner_widget', function(require) {
  "use strict";
  
      var core = require('web.core');
      var Dialog = require('web.Dialog');
      var form_common = require('web.form_common');
      var Widget = require('web.Widget');
  
      var Model = require('web.Model');
  
      var _t = core._t;
      var QWeb = core.qweb;
  
      console.log('JS loaded');
  
      $(document).on('ready', function() {
          console.log('Doc is ready');
          $('#FIELD').on('change', function() {
              // Change value of other fields in this form
  
          });
      });
  });
  </code></pre>
  
  <p>Problem is that document ready triggers in whole ODOO system. And trying to find the field by its name <code>$(#fieldname)</code> doesn't work at all.</p>
  
  <p>Is there any solution SPECIFIC FOR ODOO for this problem? Or maybe you know really good documentation or example that explain on change method OF ODOO FIELD. P.S. I write ODOO in caps because everybody answers simple JQuery style, and this is not just simple JQuery, this must be something more specific related to ODOO.
  Or maybe I can call Python function of specific form view after the field has been changed, something like that. All odoo documentation that I found gives very little or no information about that.</p>
  
  <p>UPDATE:</p>
  
  <p>Thanks to @Vishal Khichadiya I got a bit close. I edited his answer by creating a widget. Now when I set this widget to the random field, let's say to some invisible field, I can use class class_partner on any field I want and it will trigger <code>onchange</code> method.</p>
  
  <pre><code>odoo.define('partner_data.res_partner_widget', function(require) {
  "use strict";
  
  var base = require('web_editor.base');
  var options = require('web_editor.snippets.options');
  var core = require('web.core');
  var Dialog = require('web.Dialog');
  var session = require('web.session');
  var form_common = require('web.form_common');
  var Widget = require('web.Widget');
  
  var Model = require('web.Model');
  
  var _t = core._t;
  var QWeb = core.qweb;
  
  var onchange_js_method_test = form_common.AbstractField.extend({
      start: function () {
          this._super();
          var self = this;
          $('body').on('change', '.class_partner', function() {
              console.log('start triggered');
              console.log(self)
              // Change value of other fields in this form
             //you can call python function from here to set your value
          });
      }
  });
  core.form_widget_registry.add('onchange_js_method_test', onchange_js_method_test);
  });
  </code></pre>
  
  <p>xml:</p>
  
  <pre><code>&lt;field name="random_invisible" " widget="onchange_js_method_test"/&gt;
  &lt;field name="on_this_field_onchange_triggers" class="class_partner"/&gt;
  </code></pre>