I got a javascript class with global variables and methods and a specefic method makes some extrange.
DOOM = (function () {
/** Class VALIDATIONS **/
var validation = function (form, inputDiv, action) {
    this.form = form;
    this.inputDiv = inputDiv; // -- This Variable
    this.action = action; // -- And This Variable
};
validation.prototype = {
    validate: function (rules, messages) {
        this.rules = rules;
        this.messages = messages;
        console.log(inputDiv);  // -- here still have value
        console.log(inputDiv);  
       $(this.form).validate({
            rules: this.rules,
            messages: this.messages,
            submitHandler: function(form){
                var getDom = new DOOM.DOM();
                var data = getDom.buildJSONValuesByJSON(getDom.buildJSONObjByForm(inputDiv)); // -- But here, already haven't value
                var sendData = new DOOM.callAJAX(action);
                sendData.start(data);
                console.log('[submitHandler] = '+ data);
                return false; 
            },
As workaround, I had to assign value where still the global variables has value. But my question is, Why those variables lost his values?.
 
    