繁体   English   中英

有了Angularjs,有没有一种方法可以只在javascript中提交表单的各个部分?

[英]With Angularjs is there a way to submit only sections of a form in the javascript?

版本:Angular 1.4

我有一个带有字段集的表单,这些字段集代表我希望用户填写的不同部分。 可以使用上一个和下一个按钮浏览这些部分。 我要设置一些限制,这些限制仅在用户完成具有有效输入的部分时才可以继续进行下一部分。

在以下问答中对此进行了完美说明: Angular JS:在提交之前验证表单字段

但是,我正在寻找稍微不同的解决方案。 我打算使用控制javascript中下一个按钮的逻辑。

有没有办法从我的JavaScript访问这些ng-form属性? 我尝试过通过它的name属性访问表单的方式,但是尽管如此,我还是收到一个错误消息,说该变量不可用。

我基本上想在用户单击下一步时检查字段集的有效性,并且如果表单无效,则在不提交表单的情况下在该部分显示适当的错误。

我没有在运气网站上检查过表格的文档。

任何帮助表示赞赏。

编辑:所以我找到了子表单ng-form的文档: https : //docs.angularjs.org/api/ng/directive/ngForm

该文档指出,当我使用此指令时,它将以相同的名称发布到作用域中,但是在我尝试访问它时,在我的js中不可用。 例如:

<form name="form">
    <fieldset ng-form="step1form"></fieldset>
    <fieldset ng-form="step2form"></fieldset>
</form>

并且显然在控制器内的js中:

console.log(form);
// <form name="form">...</form>

console.log(step1form);
// ReferenceError: step1form is not defined

使用此HTML

<form name="form">
    <fieldset ng-form="step1form"></fieldset>
    <fieldset ng-form="step2form"></fieldset>
</form>

您应该能够像这样在控制器中访问它:

console.log($scope.form.step1form);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM