敲除锚标签的可见绑定不起作用

时间:2013-04-17 11:23:20

标签: knockout.js javascript

我在我的应用程序中使用JavaScript模块模式。 这是我的html绑定

<a href="#" data-bind="visible:master.child.showDeleteLink,click: function(obj, event) { master.child.showDeletePopup() } ">

我的观点模式是

    master.child=(function (my, jQuery, ko) {
    var textTemp;
    my.ViewModel = function () {
    self.showDeleteLink = ko.observable();
        self.showDeleteLink = function () {
            if (textTemp.length > 500)
                return true;
            else
                return false;
       }
    ko.applyBindings(my.anothermodule);
    } 
}(master.child, $, ko));

点击绑定,html文本工作得很好:)。

但是visiblity绑定不起作用。任何人都有任何想法?我错了吗?

2 个答案:

答案 0 :(得分:0)

更改绑定到data-bind="visible:master.child.showDeleteLink()现在它的工作非常好

答案 1 :(得分:0)

my.ViewModel = function () {
    self.showDeleteLink = ko.observable();
        self.showDeleteLink = function () {
            if (textTemp.length > 500)
                return true;
            else
                return false;
       }

您的“self.showDeleteLink”不再可观察。你给它一个新的价值,作为功能。

我认为你要找的是一个计算值: http://knockoutjs.com/documentation/computedObservables.html

self.showDeleteLink = ko.computed(function() {
        return (textTemp.length > 500);
    });