2017-05-30 86 views
2

我正在製作一個應用程序使用離子框架-v1,現在我發現了當我的應用程序部署到iOS應用程序似乎起初工作完全正常。是否可以允許「數字」輸入的空格angularjs

但是,當我在input=[number]字段中輸入一個空格(使用手機數字鍵盤)的應用程序開始閃爍,在他們的空間失去範圍。後來,當我想將我的數據推送到angularfire時,它也完全停止工作,並且不會讓我推送我的數據。

我輸入是如此簡單:

<input type="number" name="" ng-model="info.DriversLicensenr"> 

我的客戶希望現場有位在其中,而且在應用時按下數字鍵盤應該出現。

有什麼辦法允許空格嗎?或修改其他輸入類型以達到預期效果?

+0

的可能的複製[HTML5輸入類型=數值是在Webkit的空如果有空格或非數字字符?](HTTPS:/ /stackoverflow.com/questions/18677323/html5-input-type-number-value-is-empty-in-webkit-if-has-spaces-or-non-numeric-ch) –

+0

我測試了這個,它確實打開了另一個數字鍵盤的種類,這不是問題。但這個不同的數字鍵盤沒有空格鍵,所以我仍然有同樣的問題。 –

回答

0

不,這是不可能的,我會建議你使用輸入類型的文本,然後使用ng模式來驗證它是數字或不。這不會阻止你插入字符,但會顯示錯誤它有一個字符或任何其他特殊字符。

+0

單擊此輸入將在Iphone或Ipad上打開一個數字鍵盤? –

+0

不可以,因爲空格不是真實的數字,或者您可以爲不同的輸入部分使用單獨的輸入類型。 –

1

這種輸入將在移動設備上打開一個數字鍵盤。但是,您必須檢查用戶是否不輸入數字以外的其他字符。

<input type="text" inputmode="numeric" ng-model="ctrl.dLicence"/> 

編輯

<input type="number" pattern="[0-9\s]*"/> 

這將打開一個數字鍵盤,但不限制爲僅數字。

+0

這仍然爲我打開文字輸入板,不知道爲什麼? –

+0

@JurjenFolkertsma我編輯了我的答案,你正在尋找的是不可能的。 '輸入號碼'將會失效,裏面有空格。 – Zooly

0

要限制輸入到只有數字或空間,可使用下面的代碼

<input type="text" inputmode="numeric" oninput="formatNumber(event)"/> 

function formatNumber(event){ 
    let value = event.target.value || ''; 
    value = value.replace(/[^0-9 ]/,''); 
    event.target.value = value; 
}