有没有办法在语义ui上使用自定义规则的promise?我想用自定义规则验证字段。如果服务器的响应为false,则字段必须为红色。这就是我想要做的。
$.fn.form.settings.rules.myCustomRule = function(param) {
let myPromise = this.get('api').r_get(allUrls.urlName, model);
myPromise.then(
response => {
return true;
}
).catch(
error => {
return false;
}
);
}
当promise返回false时,您可以将error
类添加到div或输入。那会有用吗?像这样:
function simulateServer(){
$('#serverresponse').addClass('error');
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.3/semantic.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="serverresponse" class="ui input">
<input type="text" placeholder="Search...">
</div>
<br><br>
<button onclick="simulateServer()">Contact Server</button>
使用自定义规则承诺是不可能的,因为它期望立即响应。