Angularjs形式为“name”属性集,忽略默认值

时间:2014-01-15 10:13:14

标签: forms validation angularjs angularjs-directive default-value

要在Angularjs中验证表单,需要在表单上设置“name”属性。设置“name”属性后,控制器中的设置默认值将不再起作用。

以下是一个示例: http://plnkr.co/edit/Q59yBZFIGWPMveYuez52?p=preview

在第一个表单上,我没有设置“name”属性,它将默认值设置正确,但在提交值时不会有验证对象。 在第二个表单上,我设置了“name”属性,该属性不会将默认值设置为正确,但在提交值时将具有验证对象。

这是预期的行为还是错误?

1 个答案:

答案 0 :(得分:0)

表单控制器放在具有给定名称的$scope中。因此,在您的情况下,模型的名称与表单的名称冲突,并发生奇怪的事情;这是一个定时炸弹,一个将来会困扰你的错误。

我喜欢给表格一个独特的名字;如果你在小提琴中尝试<form name="user2form">,它就会奏效。 (出于这个原因,我总是将表单名称加上form。)