Как получить длину текста в текстовом поле Mojo?
Как узнать длину текста внутри текстового поля Mojo?
Я пытаюсь установить MultiLine TextField с лимитом в 150 символов, я пытался сделать это с помощью счетчика, но столкнулся с проблемой невозможности уменьшить счетчик при удалении текста или добавить правильное число при вставке текст, поэтому мой новый подход состоял в том, чтобы получать длину текста каждый раз, когда вы нажимаете букву.
Я уже пробовал это: (вызывается в charsAllow
атрибут textField
)
if (this.controller.get("mensaje").mojo.getValue().length <= 150) {
return true;
}
this.controller.get("mensaje").mojo.blur();
return false;
но это не работает.... Я отладил, и функция завершается сразу после строки, выделенной жирным шрифтом... она даже не возвращает true
или же false
,
Я также попытался присвоить значение длины переменной или присвоить текст переменной, а затем получить длину, но ничего.
Это та же проблема. Возвращается сразу после getValue()
,
Кроме того, возможно, из-за этой проблемы текст прокручивается вместо переноса, но когда textField
теряет фокус, оборачивает текст.
4 ответа
Мое первое предположение было бы, что "это" не передается в charsAllow должным образом. Вы связали (это) функцию, которую вы передаете в качестве аргумента?
Если mensaje - это HTML-идентификатор вашего текстового поля, попробуйте получить его и использовать.innerHTML(). Length. Другими словами, работайте с элементом DOM, используя функции Javascript/Prototype вместо объекта Mojo.
Я нашел это немного странным... функция mojo.getValue() на самом деле работает... но не изнутри функции, вызываемой "charsAllow"..., а также, функция, вызываемая charsAllow, не может вызывать любые другие функция, она просто выходит из функции, ничего не делая... у кого-нибудь есть способ ограничить символы в MultiLine TextField??? (текстовое поле mojo, чтобы сохранить внешний вид:D). Спасибо!!
Этот блог объясняет, что текстовые поля могут быть полезны: http://kmdarshan.com/wordpress/?p=3305