【问题标题】:Cannot create property 'selected' on string 'Information Technology' angularjs无法在字符串“信息技术”angularjs上创建属性“选定”
【发布时间】:2016-09-11 15:18:18
【问题描述】:

这是我的控制器

 $scope.subjects = ["Computer Security", "Graphics and Multimedia", "Networks", "Computer Science and Engineering", "Game Design", "Programming", "Information Technology", "Software Engineering", "Technology Management", "Telecommunications", "Web Development", "Sociology", "Psychology", "General", "Social Work", "Criminal Justice", "Law and Paralegal", "Public Safety", "Forensic Sciences", "Counseling", "Homeland Security", "Political Science", "Public Administration"];

这是我绑定数据的视图

 <label class="concentration-label3" ng-repeat="value in subjects">
        <input ng-model="value.selected" ng-disabled="subjectCheckedCount == subjectLimit && !value.selected" type="checkbox" name="concentrations" class="concentration-label3__input js-concentration-value" value="{{value}}" data-mixpanel-subject="Design" >
        <span class="concentration-label3__title" for="conc1">
            {{value}}
            <span class="concentration-label3__title__checkmark4"></span>
        </span>
 </label>

它给了我“无法将选择的属性绑定到字符串”的错误 xyz'请帮忙!!!

【问题讨论】:

  • plnkr.co/edit/cdwY1EzKRAL0qlwC9eyO?p=preview 。它为我工作,它看起来像不同的原因
  • 它也为我绑定了数据,但是在我的 $scope.$watch 函数中,当我尝试获取属性 value.selected 时,它会在控制台中显示“无法在字符串上创建属性”错误..
  • 请添加观看脚本

标签: javascript angularjs angularjs-ng-repeat


【解决方案1】:

subjects 是一个字符串数组,它没有您尝试绑定到输入的属性 selected

【讨论】:

  • 那么我应该如何处理主题以使其具有选定的属性?
  • 你可以像selectedValue一样向$scope添加一个属性,或者你可以将subjects变成对象,即subjects = [{ value: "Computer Science", selected: false }, ...
  • 谢谢第二个。
【解决方案2】:
for(var j = 0; j < $scope.subjects.length; j++){
    $scope.subjectsArray.push({
        'name':  $scope.subjects[j],
        'value': $scope.subjects[j]
    });   
}

我们必须提供 ng-repeat 对象才能创建 稍后那个对象。我们不能创建字符串的属性。所以我将我的字符串数组转换为对象数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-04
    • 2018-12-08
    • 1970-01-01
    • 2022-01-25
    • 2018-11-24
    • 1970-01-01
    • 2017-09-22
    • 2019-07-20
    相关资源
    最近更新 更多