【问题标题】:Change ng-bind and ng-model dynamically动态更改 ng-bind 和 ng-model
【发布时间】:2015-12-23 15:12:35
【问题描述】:

我需要帮助。 我有一个项目,我需要动态地重复 html 节点。这些节点具有像这样的 ng-bind 和 ng-model 属性:

<input class="quest_model" type="text" data-ng-model="quest">
<span ng-bind="quest" class="quest_bind"></span>

我可以像这样使用 Jquery 更改此属性:

quest.find("span.quest_bind").attr("ng-bind", "quest" + seq);

但是,当我按下按钮复制节点时,angularJS(ng-bind) 的魔力不会发生。 谁能帮帮我?

【问题讨论】:

    标签: javascript jquery angularjs angular-ngmodel ng-bind


    【解决方案1】:

    使用 json 对象

    $scope.quest = {
    'this': 'some random value',
    'that': 'some other value'
    }
    $scope.seq = 'this'
    

    那么你所要做的就是在你的控制器中引用 json 对象

    <span ng-bind="quest[seq]" class="quest_bind"></span>
    

    将输入的 ng-model 设置为 $scope.seq,这将允许您控制 span 元素的绑定对象。

    <input class="quest_model" type="text" ng-model="seq">
    

    所以如果你在输入框中输入“that”,它会将 span 标签绑定到 $scope.quest.that,它等于 “一些随机值”

    同样,如果你在输入框中输入“this”,它会将 span 标签绑定到 $scope.quest.this,它等于 “some other value”

    【讨论】:

    • 向您的任务对象添加新数据将非常容易。要添加一个名为“quest1”的新条目,您只需使用 $scope.quest.quest1 = "blah blah blah"
    • 然后,如果您在输入框中输入 quest1,它会将“blah blah blah”绑定到您的 span 元素
    猜你喜欢
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 2013-09-09
    • 2014-02-26
    相关资源
    最近更新 更多