sapui5 - 我们如何在 SAP UI5 中仅验证表单中的必填字段?
问题描述
我正在尝试创建一个表单,其中包含一些需要在表单提交时进行验证的必填字段。
谁能建议我在 SAP UI5 中做到这一点的最佳方法?必填字段数量较多,因此我不想通过 ID 分别检查所有字段。
解决方案
您可以在两种情况下执行此操作。在输入值时,或在提交您的问题中的表单时。
CheckRequired: function(oEvent) {
var aInputs = [this.getView().byId(oEvent.getSource().getId())];
var sError = false;
jQuery.each(aInputs, function(i, input) {
if (!input.getValue() || input.getValue().length < 1) {
input.setValueState("Error");
input.focus();
sError = true;
} else {
input.setValueState("None");
}
});
return sError;
},
此函数将与 onLiveChange 属性一起使用。它检查控件是否填充了至少一个字符。
如果您想在按下提交时检查所有内容。您可以在表单中使用这样的函数:
_onSubmitCheck: function() {
var oForm = this.getView().byId("form").getContent();
var sError = false;
oForm.forEach(function(Field) {
if (typeof Field.getValue === "function") {
if (!Field.getValue() || Field.getValue().length < 1) {
Field.setValueState("Error");
sError = true;
}
else {
Field.setValueState("None");
}
}
});
return sError;
},
它将遍历您的表单控件以检查 getValue() 方法是否作为控件的一部分存在。如果返回是,它将检查它是否具有至少 1 个字符的值。
推荐阅读
- javascript - 如何在一个区间内循环这两个不透明度函数?
- android - 如何在 Gitlab CI 中检索 Android SHA-1
- javascript - 在 React 项目的 WebStorm 中使用 Flow 时如何修复这个红色下划线?
- css - 如何解决 IE 中的背景图像 css 问题
- android - Android:如何仅为我的应用设置密码/PIN?
- python - 这段代码的多处理解释是什么?
- java - 尝试使用 parseInt() 和 trim() 时出现 NumberFormatException 无法修复它
- docker - Podman(码头工人)容器
- django - “包”对象没有属性“评论”
- intellij-idea - 在 IntelliJ 中创建 Web 项目时未显示设置中的目录