是否可以在" number"输入angularjs

时间:2017-05-30 09:10:57

标签: ios angularjs input ionic-framework angular-ngmodel

我正在使用离子框架-v1创建一个应用程序,现在我发现在将我的应用程序部署到IOS时,应用程序似乎最初工作得非常好。

但是当我在input=[number]字段中输入空格(使用手机号码键盘)时,应用程序会开始闪烁并丢失其中包含空格的范围。后来,当我想将我的数据推送到angularfire时,它也完全停止工作,不会让我推送我的数据。

我的输入就像这样简单:

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

我的客户希望该字段中包含空格,但在应用程序中按下时,数字小键盘应显示。

有没有办法让空格?或修改其他输入类型以达到所需效果?

3 个答案:

答案 0 :(得分:2)

此类输入将在移动设备上打开数字键盘。但是,您必须检查用户是否输入了除数字之外的其他字符。

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

修改

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

这会打开一个数字键盘,但不仅限于数字。

答案 1 :(得分:0)

不,这是不可能的我建议您使用输入类型文本,然后使用ng-pattern验证它是否为数字。这不会阻止你插入字符,但会显示错误,那就是字符或任何其他特殊字符。

答案 2 :(得分: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;
 }