Javascript 单个元素上的两个相同类型的自定义绑定
我有以下代码:Javascript 单个元素上的两个相同类型的自定义绑定,javascript,jquery,knockout.js,Javascript,Jquery,Knockout.js,我有以下代码: ko.bindingHandlers.myBinding = { update: function(element, valueAccessor) { var value = ko.utils.unwrapObservable(valueAccessor()); alert(value); } }; ko.applyBindings({ firstValue: ko.observable(true), second
ko.bindingHandlers.myBinding = {
update: function(element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
alert(value);
}
};
ko.applyBindings({
firstValue: ko.observable(true),
secondValue: ko.observable(false)
});
<input data-bind="myBinding: firstValue, myBinding: secondValue"/>
ko.bindingHandlers.myBinding={
更新:函数(元素、值访问器){
var value=ko.utils.unwrapobbservable(valueAccessor());
警报(值);
}
};
ko.applyBindings({
第一个值:ko.可观察(真),
第二个值:ko.可观察(假)
});
运行此命令只会生成一个带有“false”的警报框。我是否可以利用设置来获得预期的行为,或者我的选项是否仅限于此:
var temp = {
update: function(element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
alert(value);
}
};
ko.bindingHandlers.myBinding = temp;
ko.bindingHandlers.myBinding2 = temp;
ko.applyBindings({
firstValue: ko.observable(true),
secondValue: ko.observable(false)
});
<input data-bind="myBinding: firstValue, myBinding2: secondValue"/>
var-temp={
更新:函数(元素、值访问器){
var value=ko.utils.unwrapobbservable(valueAccessor());
警报(值);
}
};
ko.bindingHandlers.myBinding=temp;
ko.bindingHandlers.myBinding2=temp;
ko.applyBindings({
第一个值:ko.可观察(真),
第二个值:ko.可观察(假)
});
谢谢,您不能在同一个元素上使用两个相同的绑定,因为它们是内部键控的 您需要创建一个同时接受两个值的绑定或一个值数组,如:
data bind=“myBinding:[firstValue,secondValue]”
然后在每一个上都有一个操作员
否则,您可以按照建议执行操作,并创建多个指向同一函数的绑定