是否有一种方法可以获得布尔值并通过骨干表单的验证?



我有一个主干。表单编辑器,它是一个带有truefalse选项的选择菜单。当我将字符串值转换为布尔值并返回getValue()方法验证失败时。我猜是因为我们返回的是false。此外,由于字符串值,底层模型总是将属性设置为true(因此是布尔值的原因)。

(function() {
    'use strict';
    Backbone.Form.editors.BooleanSelect = Backbone.Form.editors.Select.extend({
        initialize: function(options) {
            options.schema.options = [
                { val: 'true', label: 'Yes' },
                { val: 'false', label: 'No' }
            ];
            Backbone.Form.editors.Select.prototype.initialize.call(this, options);
        },
        getValue: function() {
            return this.$el.val() === 'true' ? true : false;
        },
        setValue: function(value) {
            this.$el.val(value);
        }
    });
})();

您可以重写validate()方法(在Backbone.Form.editors.Base中定义),这会修复它

相关内容

  • 没有找到相关文章

最新更新