Knock out visible binding of anchor tag is not wor

2019-08-26 03:19发布

I am using JavaScript module pattern in my application. Here is my html binding

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

My view modal is

    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));

Click binding, html are text are working pretty fine :).

But visiblity binding is not working.any body have any idea? am i wrong any where?

2条回答
姐就是有狂的资本
2楼-- · 2019-08-26 04:00

change The binding to data-bind="visible:master.child.showDeleteLink() now its working pretty fine

查看更多
一纸荒年 Trace。
3楼-- · 2019-08-26 04:13
my.ViewModel = function () {
    self.showDeleteLink = ko.observable();
        self.showDeleteLink = function () {
            if (textTemp.length > 500)
                return true;
            else
                return false;
       }

your "self.showDeleteLink" is no longer observable. You give it a new value, being the function.

I think what you are looking for is a computed value: http://knockoutjs.com/documentation/computedObservables.html

self.showDeleteLink = ko.computed(function() {
        return (textTemp.length > 500);
    });
查看更多
登录 后发表回答