2
我得到了一個帶有用戶名文本框的註冊表單。 對於這個文本字段我添加了一個自定義驗證函數來檢查的可用性所選用戶名:ExtJS 6:文本框上的驗證器無法正常工作
xtype: 'textfield',
name: 'username',
msgTarget: 'under',
bind: {
fieldLabel: '{texts.username}'
},
allowBlank: false,
minLength: 3,
checkChangeBuffer: 300,
validator: function (value) {
if (value.length < 3) {
return null;
}
Ext.Ajax.request({
method: 'POST',
url: '/rest/availability',
params: {
name: value
}
}).then(
function (result) {
return Ext.JSON.decode(result.responseText) ? true : 'Username already exists';
},
function (response) {
return 'Server issue.';
}
)
}
這也許應該這樣做。但它沒有。 我得到一個破碎的錯誤,驗證總是顯示無效,不顯示消息:
當我檢查了迴應,我從服務器獲取正確的值。 我在這裏錯過了什麼?
在此先感謝。
參見:http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call/14220323#14220323 –
參見:HTTP:// stackoverflow.com/a/8121254 –
非常感謝。我想我忽略了這個.. – xdn