AngularJs clear input in ng-repeat

AngularJS

input内容消除后,由于ng-blur了,于是虽已不需要了,但仍有红框提示,而$scope.comment_form由于重名而为undefined.

解决方案:

前台:

div(ng-repeat="a in b")
  form(name="comment_form")
    input(ng-model="content" required)
    button(ng-click="comment(comment_form)")

 在controller中: 

<pre name="code" class="javascript">$scope.comment=function(form){
  $scope.content='';
  form.$setPrinstine;
}

 

对不起,我理解错了您的要求。要使用ng-template来调用方法,您可以按照以下步骤操作: 1. 在组件中声明一个TemplateRef变量,并将其注入到构造函数中。例如: ```typescript constructor(private templateRef: TemplateRef<any>) { } ``` 2. 在模板中使用ng-template,并将其绑定到一个变量上。例如: ```html <ng-template #myTemplate> <button (click)="myMethod()">调用方法</button> </ng-template> ``` 3. 在组件中定义一个方法,该方法将使用ViewContainerRef来创建一个嵌入视图,并将ng-template作为参数传递给createEmbeddedView方法。例如: ```typescript import { ViewContainerRef } from '@angular/core'; myMethod() { this.viewContainerRef.clear(); this.viewContainerRef.createEmbeddedView(this.templateRef); } ``` 请注意,我还添加了`ViewContainerRef`作为依赖注入,并在`myMethod`方法中使用了`clear`方法来清除视图容器中的任何现有内容。 4. 在组件的模板中,使用`ng-container`来放置嵌入视图。例如: ```html <ng-container #container></ng-container> ``` 5. 在组件的类中,使用ViewChild装饰器来获取`ViewContainerRef`的引用。例如: ```typescript @ViewChild('container', { read: ViewContainerRef }) viewContainerRef: ViewContainerRef; ``` 这样,当调用`myMethod()`方法时,将会创建一个嵌入视图,并将ng-template的内容插入到`ng-container`中。 希望这样能满足您的要求!如果您还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值