[英]Custom Error Validation Message Not Showing
我在Angular中进行错误验证,如下所示。
<select ng-model = "color" class = "form-control"
ng-options = "color as color for color in colors" required>
<option value="">Choose an option</option>
</select>
<span ng-show="serviceForm.color.$error.required"> My custom error message </span>
错误验证将按预期方式显示,但是自定义消息不会显示。 相反,我得到以下内容。
这看起来不错,但是如何用自定义消息替换呢? 如果我知道它来自哪里,那就太好了,我可以对其进行编辑。
另外,如果我取出,我的自定义消息也会出现
<option value="">Choose an option</option>
然后它总是出现。 为什么是这样?
<select ng-model = "color" class = "form-control" name="lstColor"
ng-options = "color as color for color in colors" data-msg-required="Please select color from list" required>
<option value="">Choose an option</option>
</select>
尝试以上,希望能解决您的问题
<form novalidate>
可用于避免这些消息。
但是,当发生oninvalid
事件时,也可以使用setCustomValidity
函数将其替换为自定义消息。
喜欢:
<input class="form-control" type="email" required="" placeholder="username" oninvalid="this.setCustomValidity('Please Enter valid email')"></input>
有用的解释在这里 。
您可以将该特定字段的HTML5
验证消息替换为表单提交上的space
。 这将阻止显示该消息,并且不会影响其他HTML5
验证消息。
JavaScript的:
$scope.ValidateInput = function(){
var email = document.getElementById("colorId");
if (email.validity.valueMissing) {
email.setCustomValidity(" ");
} else {
email.setCustomValidity("");
}
}
HTML :
<form name='serviceForm'>
<select name='color' id='colorId' ng-model = "color" class = "form-control"
ng-options = "color as color for color in colors" required>
<option value="">Choose an option</option>
</select>
<span ng-show="serviceForm.color.$error.required"> My custom error message </span>
<input type='submit' ng-click='ValidateInput()' value='Submit'>
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.