2014-09-01 46 views

回答

1

電話:<input type="tel" name="usrtel">

這將打開一個alphanummeric鍵盤。這可以是任何你想要的號碼,不僅是一個電話號碼:-)

類型「tel」是新的,來自html5。有關所有輸入類型的概述可以在這裏找到:W3Schools

從週一起編輯。 2014年9月1日下午4:30: 由於Jonas Grumann給出的答案,我在編輯我的答案。您應該僅使用<input type="tel"僅用於數字。像所描述的類型:例如電話號碼。如果用戶輸入十進制數,該輸入類型將不會識別它。

如果你希望用戶輸入您與這裏給出的答案「模式」做decimalnumbers你應該使用他們,那麼這樣的:

HTML

<input type="text"> 

和JS(請考慮:這些都是你需要jQuery/jQuery-mobile

$('input[type="text"]').on('touchstart', function() { 
    $(this).attr('type', 'number'); 
}); 

$('input[type="text"]').on('keydown blur', function() { 
    $(this).attr('type', 'text'); 
}); 

命令爲了完整起見,我將引用已經給出此答案的用戶 - >Force iOS numeric keyboard with custom currency pattern

這個想法很簡單。輸入開始並以type =「text」結尾, ,但它在touchstart事件中暫時變爲type =「number」。此 會導致出現正確的iOS鍵盤。只要用戶開始輸入任何輸入或離開該字段,輸入就會再一次變爲type =「text」 ,從而繞過驗證。

這種方法有一個缺點。當用戶返回已輸入的輸入 時,輸入將丟失(如果它 未驗證)。這意味着用戶將無法返回並編輯以前的字段。在我的情況下,這並不是那麼糟糕,因爲 用戶可能希望一次又一次地使用不同的 值,所以自動刪除輸入將會爲他們節省幾個步驟 步驟。但是,這在所有情況下可能都不理想。

它看起來像移動Safari支持電子郵件,數字,搜索,電話和網址的新的HTML5輸入類型 屬性。這些將會切換顯示的鍵盤 。查看類型屬性。

如果還有更多問題,請告訴我,我將再次編輯。

+0

這可能會工作,但這不是我所需要的。這打開了一個數字鍵盤,人們不能插入字符,他們可以嗎? – Nicolas 2014-09-01 14:50:14

+0

所以你想要數字和文字,這樣的組合?做一個你需要的模式,0-9 az等組合 – Sithys 2014-09-01 14:53:14

+0

是的數字和文字(字母數字):大多數用戶只會輸入數字,但其中一些需要字符...這就是爲什麼我不知道是否可以使用常見的文本鍵盤,但默認情況下使用數字(不使用'@ 123'鍵)。這是否更清楚? – Nicolas 2014-09-01 15:03:35

相關問題