gpt4 book ai didi

angularjs - 需要在 Angular if 语句中选中复选框

转载 作者:行者123 更新时间:2023-12-01 08:05:41 25 4
gpt4 key购买 nike

我有两个需要检查的 ID 列表。如果它们匹配,则应选中该复选框。我是 angularJs 的新手,所以请帮帮我。
我的代码现在看起来像这样。 All Media 是一个具有许多值的对象。
mediaIdFromSpecifikLead 只是一个带有 int id 的列表。

 <tr ng-repeat="media in allMedia">
<div ng-repeat="mediaFromLead in mediaIdFromSpecificLead">
<div ng-if="media.Id == mediaFromLead ">
<td>
<input type="checkbox" ng-checked="true" />
</td>
</div>
<div ng-if="media.Id != mediaFromLead ">
<td>
<input type="checkbox" ng-checked="false" />
</td>
</div>
</div>
</tr>

使用此代码,它甚至显示了两个复选框(一个已选中,一个为空),所以即使这样也不起作用,所以我可能完全错了。

编辑:所以我想要每个媒体文件只有一个复选框。如果我的 Lead 连接到该媒​​体文件,则应选中该复选框,否则应保持未选中状态。

最佳答案

在那里使用 ng-checked 毫无意义,因为您没有绑定(bind)到任何模型。在这种情况下,您可以只使用检查(您的逻辑在 ng-if 中):

<tr ng-repeat="media in allMedia">
<div ng-repeat="mediaFromLead in mediaIdFromSpecificLead">
<div ng-if="media.Id == mediaFromLead ">
<td>
<input type="checkbox" checked="true" />
</td>
</div>
<div ng-if="media.Id != mediaFromLead ">
<td>
<input type="checkbox" checked="false" />
</td>
</div>
</div>
</tr>

如果您想使用 ng-check 进行检查,以下应该可以工作:
<tr ng-repeat="media in allMedia">
<div ng-repeat="mediaFromLead in mediaIdFromSpecificLead">
<input type="checkbox" ng-checked="media.Id == mediaFromLead" />
</div>
</tr>

如果您只想要每个媒体的复选框(而不是每个 mediaFromLead)。您将需要更改它以使用 Controller 中的功能来进行检查,而不是使用 ng-checked。像这样的东西:
<tr ng-repeat="media in allMedia">
<input type="checkbox" ng-checked="checkIfInMediaFromLead(media.Id, mediaFromLead)" />
</tr>

checkIfInMediaFromLead 函数应该返回一个 bool 值。

关于angularjs - 需要在 Angular if 语句中选中复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29209023/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com