日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java非必填字段跳过校验,avalon2表单验证,非必填字段在不填写的时候不能通过验证...

發布時間:2024/7/5 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java非必填字段跳过校验,avalon2表单验证,非必填字段在不填写的时候不能通过验证... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

avalon2表單驗證,非必填字段在不填寫的時候不能通過驗證

代碼

var vm = avalon.define({

$id: "validate1",

aaa : "",

validate: {

onError: function(reasons) {

reasons.forEach(function(reason) {

console.log(reason.getMessage())

})

},

onValidateAll: function(reasons) {

if(reasons.length) {

alert(reasons[0].getMessage())

} else {

alert('全部通過')

}

}

}

})

截圖

查看源碼 avalon/src/directives/duplex/addValidateField.js 中 validate 方法中

var next = function (a) {

if (field.norequired && value === '') {

a = true

}

......

}

有判斷 field.norequired 是否為非必填字段 ,但貌似 norequired 屬性從未賦值過

我的解決辦法

在源碼 avalon/src/directives/duplex/addValidateField.js 改造

代碼如下

module.exports = function addField(node, vnode) {

var field = node.__ms_duplex__

var rules = vnode['ms-rules']

if (rules && !field.validator) {

while (node && node.nodeType === 1) {

var validator = node._ms_validator_

if (validator) {

if (rules['required'] === undefined || rules['required'] === false)

field.norequired = true;

field.rules = rules

field.validator = validator

if (avalon.Array.ensure(validator.fields, field)) {

validator.addField(field)

}

break

}

node = node.parentNode

}

}

}

新增了 這么一段 給 norequired 屬性賦值 解決了非必填驗證的問題

if (rules['required'] === undefined || rules['required'] === false)

field.norequired = true;

但不知道此方法是否是合理?

總結

以上是生活随笔為你收集整理的java非必填字段跳过校验,avalon2表单验证,非必填字段在不填写的时候不能通过验证...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。