Twitter bootstrap 引导验证程序自定义函数仅在销毁后出现。这是预期的行为吗?
我正在使用这个插件,并注意到它有一个奇怪的行为 进行此测试以确认我的怀疑:Twitter bootstrap 引导验证程序自定义函数仅在销毁后出现。这是预期的行为吗?,twitter-bootstrap,validation,Twitter Bootstrap,Validation,我正在使用这个插件,并注意到它有一个奇怪的行为 进行此测试以确认我的怀疑: QUnit.test('call custom validator', function (assert) { var form = '<form>' + '<div class="form-group has-error">' + '<input type="text" value="example" data-validation1 data-validatio
QUnit.test('call custom validator', function (assert) {
var form = '<form>'
+ '<div class="form-group has-error">'
+ '<input type="text" value="example" data-validation1 data-validation2>'
+ '<input type="text" value="mobilephone" data-requiredone="phone">'
+ '<div class="help-block with-errors">Fill at least one</div>'
+ '</div>'
+ '</form>'
var $form = $(form)
.appendTo('#qunit-fixture')
.validator()
var options1 = {
custom: {
validation1: function (element) { }
}
}
var options2 = {
custom: {
validation2: function (element) { }
}
};
var form = $('form').validator(options1)
var validator = $(form).data("bs.validator")
assert.ok(validator.options.custom.validation1 && validator.options.custom.validation1.toString() == options1.custom.validation1.toString(), 'validator.options.custom contains validation1')
$('form').validator('destroy')
$('form').validator(options2)
validator = $("form").data("bs.validator")
assert.ok(validator.options.custom.validation2 && validator.options.custom.validation2.toString() == options2.custom.validation2.toString(), 'validator.options.custom contains validation2')
})
QUnit.test('call custom validator',function(assert){
变量形式=“”
+ ''
+ ''
+ ''
+“至少填写一个”
+ ''
+ ''
var$form=$(form)
.appendTo(“#qunit fixture”)
.validator()
变量选项1={
自定义:{
validation1:函数(元素){}
}
}
var选项2={
自定义:{
validation2:函数(元素){}
}
};
var form=$('form').validator(选项1)
var验证器=$(表单).data(“bs.validator”)
assert.ok(validator.options.custom.validation1&&validator.options.custom.validation1.toString()==options1.custom.validation1.toString(),'validator.options.custom包含validation1')
$('form')。验证器('destroy'))
$('form').validator(选项2)
验证器=$(“格式”).data(“bs.validator”)
assert.ok(validator.options.custom.validation2&&validator.options.custom.validation2.toString()==options2.custom.validation2.toString(),“validator.options.custom包含validation2”)
})
第一个断言通过,第二个断言不通过
还发现“销毁”是一种变通方法,更让我头疼的是
我也把这个问题贴在了项目的首页上
有人能告诉我这是否正确吗?插件创建者的回应: 您已经在没有使用自定义验证程序的情况下初始化了插件
var $form = $(form)
.appendTo('#qunit-fixture')
.validator()
如果再次调用.validator(),插件不会使用新选项重新初始化自身。这在将来可能会改变
答案是肯定的,是预期的行为