我有多個複選框如下如何知道複選框是否被點擊或不角2
moduleNameList = ['test1', 'test2', 'test3', 'test4']
<li *ngFor="let module of moduleNameList">
<input [value]="module" type="checkbox"> {{module}}<br>
</li>
用戶可以點擊任何複選框,最後一次他點擊一個按鈕,我想知道是什麼值用戶選中。 任何人都可以幫助我嗎?
我有多個複選框如下如何知道複選框是否被點擊或不角2
moduleNameList = ['test1', 'test2', 'test3', 'test4']
<li *ngFor="let module of moduleNameList">
<input [value]="module" type="checkbox"> {{module}}<br>
</li>
用戶可以點擊任何複選框,最後一次他點擊一個按鈕,我想知道是什麼值用戶選中。 任何人都可以幫助我嗎?
有很多方法可以做到this.If我們使用常規的jQuery的方法設置你的輸入
<input class="foo" [value]="module" type="checkbox"> {{module}}<br>
那麼你可以單擊事件做到這一點
<script>
$('.foo').click(function(e)
{
var value = $(this).val();
alert(value);
});
</script>
或者,看看這個使用ng-click的Adding parameter to ng-click function inside ng-repeat doesn't seem to work
我認爲最簡單的方法是將項目設置爲對象,新屬性,例如checked
作爲ngModel
,在檢查時切換布爾值true
,反之亦然。
moduleNameList=[{name:'test1', checked: false},{name:'test2', checked: false},
{name:'test3',checked:false}]
模板:
<li *ngFor="let module of moduleNameList">
<input [value]="module" type="checkbox" [(ngModel)]="module.checked">
{{module.name}}
</li>
現在你可以重複按鈕點擊該數組,看看哪些對象有checked
財產true
。
編輯:作爲OP注意到我的錯誤的小改變!我們應該使用[value]
而不是[ngValue]
您可以將[(ngmodel)]和(change)=「changed($ event)」添加到您的輸入元素。 – riteshmeher
嘿,它的答案是怎麼回事?有幫助還是需要進一步的幫助? :) – Alex
@ AJT_82:謝謝你的回答,它爲我工作,但[ngValue]不工作,而不是我使用[價值] –