gpt4 book ai didi

javascript - 使用 ngchange 修改复选框中的范围对象值

转载 作者:行者123 更新时间:2023-12-02 16:11:25 25 4
gpt4 key购买 nike

如果这是一个新手错误,请原谅,但我认为这一定非常简单,而且我显然错过了一些东西..

我有以下ngrepeat:

       <div class="panel-body" data-ng-repeat="participant in activity.Participants" ng-show="showp" ng-init="participant.CheckInTime ='not set'"> <--The 'init' is for debug
{{getparticipantName(participant.ParticipantID)}}

Check in = {{participant.CheckInTime}}
<input type="checkbox" ng-model="participant.CheckedIn"
ng-change="setToNowOrNull(participant.CheckedIn, 'participant.CheckInTime')">

<br />
Check in = {{participant.CheckInTime}}

</div>

它嵌套在另一个定义 Controller 等的 ng-repeat 中,并且工作正常。但是当我单击复选框时, settoNowOrNull 函数被调用,按应有的方式更改值,但这不会返回给参与者。CheckInTime .. 这是函数:

        $scope.setToNowOrNull = function (deciderbool, thingtoset) {
if (deciderbool) //its been set to true.
{
$scope[thingtoset] = Date.now();
}
else //its been cleared to false
{
$scope[thingtoset] == null;
}
}

我在阅读此处的另一个问题后添加了 $scope[thingtoset] 但无济于事..与 ng-change 行中“participant.CheckInTime”周围的单引号相同。 (这应该传递对象而不是值?)..我显然没有得到什么,而且我本以为我可以在 html Angular 中完成它,而不是需要为如此琐碎的事情调用 Controller - 我只需要将 Date.Now() 记录到参与者中。登记时间。有人有什么想法吗?

最佳答案

你可以试试这个:

<input type="checkbox" ng-model="participant.CheckedIn"
ng-change="setToNowOrNull(participant)">


$scope.setToNowOrNull = function (participant) {
if (participant.CheckedIn) //its been set to true.
{
participant.CheckInTime = Date.now();
}
else //its been cleared to false
{
participant.CheckInTime == null;
}
}

关于javascript - 使用 ngchange 修改复选框中的范围对象值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30140050/

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