[英]GWT telephone number masking
有誰知道如何 go 關於創建將執行電話號碼格式屏蔽的字段,就像這里(___) ___-____
:
http://www.smartclient.com/smartgwt/showcase/#form_masking
更好的方法是讓用戶輸入他們想要的任何內容:“789-555-1234”或“(789) 555-1234”或“7895551234”,然后當字段失去焦點時決定他們輸入的內容是否可以是電話數字。 如果是這樣,您可以將其重新格式化為“(789) 555-1234”。 關於如何用正則表達式做這類事情有幾個相關的問題; 只需確保您的正則表達式接受您將用戶輸入更改為的格式,否則編輯會很煩人。
舉個例子,看看當你在微軟標准頁面設置對話框的左邊距字段中輸入“.5”時會發生什么:當你把它改成“0.5”時。
更新:這是 GWT 中的示例代碼來說明。 為了這個例子,假設有一個名為“phoneContainer”的元素可以放入文本框。 GWT 沒有給你完整的 java.util.regex ZEFE90A8E604A7C840E88D03A67
private void reformatPhone(TextBox phoneField) {
String text = phoneField.getText();
text = text.replaceAll("\\D+", "");
if (text.length() == 10) {
phoneField.setText("(" + text.substring(0, 3) + ") " + text.substring(3, 6) + "-" + text.substring(6, 10));
}
}
public void onModuleLoad() {
final TextBox phoneField = new TextBox();
RootPanel.get("phoneContainer").add(phoneField);
phoneField.addBlurHandler(new BlurHandler(){
public void onBlur(BlurEvent event) {
reformatPhone(phoneField);
}
});
}
看起來您想要創建自己的小部件來擴展 GWT 輸入框,並將默認值設置為您想要的掩碼。 然后您處理 onKeypress 事件並根據需要更新該字段(確保將 cursor position 設置到正確的位置)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.