Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
1814 Widoki
odoo.define('product_dimensions.website_sale', function (require) {
    "use strict";

    var core = require('web.core');
    var _t = core._t;
    var ajax = require('web.ajax');
    var publicWidget = require('web.public.widget');

    publicWidget.registry.ProductDimensions = publicWidget.Widget.extend({
        selector: '.oe_website_sale',
        events: {
            'change input[name="wide"]': '_onWidthChange',
            'change input[name="high"]': '_onHeightChange',
        },

        start: function () {
            this.product_id = this.$el.find('#product_id').val(); // Assuming '#product_id' is an input field that holds the product id
            return this._super.apply(this, arguments);
        },

        _onWidthChange: function () {
            var wide = parseFloat($('input[name="wide"]').val());
            console.log(this.product_id)
            ajax.jsonRpc("/shop/product/min_dimensions", 'call', {'product_id': this.product_id}).then(function (data) {
                if (wide < data.wide_mini) {
                    alert(_t('The number you entered is less than the minimum width:')+ data.wide_mini);
                }
                else if (wide > data.wide_max) {
                    alert(_t('The number you entered is greater than the maximum width:')+ data.wide_max);
                }
            });
        },

        _onHeightChange: function () {
            var high = parseFloat($('input[name="high"]').val());
            ajax.jsonRpc("/shop/product/min_dimensions", 'call', {'product_id': this.product_id}).then(function (data) {
                if (high < data.high_mini) {
                    alert(_t('The number you entered is less than the minimum height:')+ data.high_mini);
                }
                else if (high > data.high_max) {
                    alert(_t('The number you entered is greater than the maximum height:')+ data.high_max);
                }
            });
        },
    });

    return publicWidget.registry.ProductDimensions;
});

Why can't the JS listener that runs normally in ODOO14 run correctly in ODOO12? The above code can input width and height in the product details page in the ODOO14 website store. At this time, the input number will be compared with the width and height set in the backend product page. If it is less than the width and height or greater than the value set by the width and height, an error prompt will pop up and require inputting the correct number.
Awatar
Odrzuć
Powiązane posty Odpowiedzi Widoki Czynność
1
lip 24
1711
0
kwi 24
1334
2
gru 23
14641
0
paź 23
33
3
paź 23
788