【问题标题】:Angular ui-bootstrap popover is not changing scope modelAngular ui-bootstrap popover 不会改变范围模型
【发布时间】:2017-12-12 14:32:02
【问题描述】:

请有人知道为什么 angular ui-bootstrap popover 没有改变范围内的模型?

<button popover-placement="right" 
        uib-popover-template="'myPopoverTemplate.html'"
        type="button" 
        class="btn btn-default">Click me!</button>

....

<script type="text/ng-template" id="myPopoverTemplate.html">
    <div class="form-group">
        <label>Date:</label>
        <p class="input-group">
            <input type="text" 
            class="form-control" 
            ng-model="dataClonada" 
            datepicker-options="dateOptionsClone" 
            uib-datepicker-popup="{{formats[5]}}" 
            is-open="popup3"
            readonly="true"/>
            <span class="input-group-btn">
            <button type="button" class="btn btn-default" ng-click="popup3=true"><i class="glyphicon glyphicon-calendar"></i></button>
            </span>
        </p>
        <button class="btn btn-success" ng-click="show()">show value</button>
    </div>
</script>

我做了一个简单的 plunker 来展示这种情况。 https://plnkr.co/edit/ebYWI8hP0xtOboY2v37Z?p=preview

【问题讨论】:

    标签: angularjs angular-ui-bootstrap


    【解决方案1】:

    你需要改变

    ng-model="dataClonada" 
    

    ng-model="$parent.variable"
    

    该指令(显然)正在创建一个新的子范围,因此您需要使用 $parent 来访问父范围并访问它的值(variable 所在的位置)。

    Fixed plnkr

    【讨论】:

    • Thaaaaaaaaaaaanks
    【解决方案2】:

    出于某种原因,它与双亲合作:

    ng-model="$parent.$parent.variable"
    

    可以,因为弹出框在中继器内?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-14
      相关资源
      最近更新 更多