我的应用使用带有简单输入元素的模态对话框
<input id="fieldEmail" class="form-control" type="text" ng-model="email" required="" />
email: {{ email }}
在显示模态时,我可以在输入字段中输入内容,并按预期在其旁边的文本中看到它。但是,如果我将输入类型更改为type =&#34; email&#34;它打破了数据绑定。输入不再回应。
还有其他人遇到过这个问题吗?
答案 0 :(得分:9)
只有在输入字段包含有效的电子邮件时它才会回显。所以将有效的电子邮件放入输入字段并检查它是否正常工作。这是因为当type="email"
ng-model
仅获取有效的电子邮件值时,否则它将undefined
。
答案 1 :(得分:3)
这是因为&#34;电子邮件&#34;。即使我们使用type =&#39; number&#39;,也是&#39; ng-model&#39;除非您在文本框中输入一些有效数字,否则将被取消定义。对于所有HTML5输入类型,我们应该给出有效的输入来为ng-model赋值。 即使我们在文本框中使用正则表达式,在我们给出满足正则表达式的值之前,ng模型也是未定义的。
&#39; http://plnkr.co/edit/G2RlzO4q1zKEPP0T8xvF?p=preview`
<body>
<h1>Hello Plunker!</h1>
Enter 3 to 12 characters only.
<br/>
<input type="text" ng-model="name" ng-pattern="/^[a-z]{3,12}$/"/>
<br/>
{{name}}