2009-08-17 31 views
3

如何獲得Mojo TextField中的文本長度?如何獲得Mojo TextField中的文本長度?

我想設置一個150字符的限制多線文本字段,我試着用一個計數器,但遇到了一個問題,當文本被刪除時不能減少計數器,或者添加粘貼文本時使用的是正確的數字,所以我的新方法是每次按一個字母時都要獲取文本的長度。

我已經嘗試過這樣的:(被調用的textFieldcharsAllow屬性)

if (this.controller.get("mensaje").mojo.getValue().length <= 150) { 
    return true; 
} 

this.controller.get("mensaje").mojo.blur(); 
return false; 

,但它不工作....我調試,只是線在之後的函數退出大膽......它甚至不返回truefalse

我也嘗試將長度值分配給一個變量或將文本分配給一個變量,然後得到長度,但沒有。

這是同樣的問題。它僅在getValue()之後返回。

此外,也許是因爲這個問題,文字滾動而不是包裝,但當textField失去焦點它包裝文本。

回答

0

我的第一個猜測是「this」沒有正確傳遞給charsAllow。 (你).bind(這個)你傳遞的函數作爲參數嗎?

1

如果'mensaje'是您的文本字段的HTML標識,請嘗試獲取並使用.innerHTML().length。換句話說,使用Javascript/Prototype函數而不是Mojo對象來處理DOM元素。

0

我發現這有點奇怪...函數mojo.getValue()實際上工作...但不是從「charsAllow」調用的函數內部...,而且,由charsAllow調用的函數可以' t調用任何其他函數,它只是突破了功能無所事事......有人有辦法限制在MultiLine TextField中的字符? (mojo textfield,保持外觀:D)。謝謝!!