2013-03-25 1 views
3

Я использую http://dev.sencha.com/playpen/docs/output/Ext.MessageBox.html#prompt, чтобы отобразить приглашение extjs, где пользователь может ввести текст и нажать «ОК». Теперь, если я хочу, чтобы пользователь вводил текст не более 100 символов, что мне делать?Ограничение ввода сообщения Extjs вводит пользовательский ввод текста

Я понимаю, что мне нужно написать какой-то обработчик событий, но что это за событие? Можно ли просмотреть образец кода?

ответ

4

При вызове MessageBox.prompt он возвращает экземпляр синглтона, который может быть использован, чтобы получить Dóm ссылку на текстовое поле элемента, этот элемент может быть использован для определения атрибутов maxlength, которые могут быть использованы для ограничения длины текста, который может быть введен

var dlg = Ext.MessageBox.prompt('Name', 'Please enter your name:', function(btn, text){ 
    if (btn == 'ok'){ 
     // process text value and close... 
    } 
}); 

var textboxEl = dlg.getDialog().body.child('input[class=ext-mb-input]', true); 
textboxEl.setAttribute('maxlength', 1); // second parameter is character length allowed so change it according to your need 

Ссылка:

Character Limit in HTML

0

обновление для Ext 4 (со многими благодаря SilentSakky е или исходный ответ):

var dlg = Ext.MessageBox.prompt('Name', 'Please enter your name:', function(btn, text){ 
    if (btn == 'ok'){ 
     // process text value and close... 
    } 
}); 

var textboxEl = dlg.getEl().query('input')[0]; 
textboxEl.setAttribute('maxlength', 1); 

 Смежные вопросы

  • Нет связанных вопросов^_^