Well I was facing a difficult case here but to simplify things for everyone's understanding Let me explain your scenario.
I have a button with the related bindings, with two buttons like text: name1 and text: name2 click binding.
ViewModel:
var viewModel = function () {var self = this; Self.arr = ko.observableArray ([1]); Self.name1 = ko.observable ("click1"); Self.name2 = ko.observable ("click2"); Self.clickme = function () {console.log (this) // this.name1 ('yoo') should be dynamic based on this.name1 or name2 btn click // clicked button}} ko.applyBindings (new viewmodel ()); When a button is clicked, I have no way to get the clicked button text binded viewable inside the click function i.e. name1 inside my function if clicked by button1
I tried $ element , the value of the VM as the $ context parameter Passing it to function does not resolve it.
Demo Bella
Any help or ideas on this would be good. Simply pass them in the
function.
& lt; Div data-bind = "foreach: arr" & gt; & Lt; Button data-bind = "text: $ root.Nname1, click: function () {$ root.clickme ($ root.name1)}" & gt; & Lt; / Button & gt; & Lt; Button data-bind = "text: $ root.Nname2, click: function () {$ root.clickme ($ root.name2)}" & gt; & Lt; / Button & gt; & Lt; / Div & gt; Then handle them in your visual model like this:
self.clickme = function (val) {warning (val ()); } here is a
No comments:
Post a Comment