3

我在页面加载后定义一个变量(存储数字 json 数据)

我可以成功地将这个变量放入:

<span data-bind="text: extQty"></span>

并且当变量更改时,它会使用适当的变量更新跨度(效果很好)。

但它不会在我的启用中更新我的变量:

<p class="pull-right"><a class="btn btn-primary" data-bind="click: $root.add, enable: pagedList().length < extQty" href="#" title="edit"><i class="icon-plus"></i> Add Extension</a></p>

我需要根据呈现给“extQty”的值有效地禁用启用。现在我正在向 extQty 发送 5,并且似乎该变量仅在“文本”数据绑定内部更新,而不是“启用”数据绑定。

4

2 回答 2

3

敲除启用绑定不适用于锚标记

所以你有两个解决方案。

解决方案 1

<a href='#' title="edit" class="btn btn-primary" data-bind='click: function() { 
 if(pagedList().length < extQty())
 {
    //call the desired method from here
 }' >

解决方案 2

此按钮仅在您的条件成功且具有点击绑定时显示

<a class="btn btn-primary" data-bind="click: $root.add, visible: pagedList().length < extQty()" href="#" title="edit">

此按钮仅在您的否定条件成功且没有点击绑定时显示

<a class="btn btn-primary" data-bind="visible: pagedList().length >= extQty()" href="#" title="edit">
于 2013-03-22T07:13:57.313 回答
1

尝试使用

<p class="pull-right">
    <a class="btn btn-primary" data-bind="style: { display: (pagedList().length < extQty) ? 'block' : 'none' }" 
        href="#" title="edit">
        <i class="icon-plus"></i>Add Extension
    </a>
</p>

或者正如@NaveenKumar 所指出的那样。您可以使用可见属性...

于 2013-03-22T07:55:26.320 回答