我是Knockout的新手,并且很难解决这个问题。
我正在尝试在Knockout中完成此选择功能。当我选择文本时,我想突出显示边框。
https://api.jquery.com/select/
现在,在Knockout中,我可以使用点击突出显示边框,但是当用户直接在文本框中选择文本时,我无法突出显示边框。
这是html。该文本框中有很多内容。如果我的问题不明确,请询问,以便我能更好地解释。
SELECT ...
FROM sys_user LEFT JOIN
core_company ON sys_user.company = core_company.sys_id
WHERE core_company.city = 'London'

答案 0 :(得分:2)
如何自定义绑定。这里是使用jquery select
将边框变为红色的边框
ko.bindingHandlers.jquerySelect = {
init: function(element, valueAccessor, allBindingsAccessor) {
$(element).select(function() {
$(this).css("border", "5px solid red");
});
$(element).val(valueAccessor()());
},
//update the control when the view model changes
update: function(element, valueAccessor, allBindingsAccessor) {
$(element).val(valueAccessor()());
}
};
function model() {
var self = this;
this.myObservable = ko.observable('hello world');
}
var mymodel = new model();
$(document).ready(function() {
ko.applyBindings(mymodel);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input data-bind="jquerySelect: myObservable" />