2017-02-19 239 views
0

Jquery的選擇相當於我是新來的淘汰賽,並具有艱難的時間試圖解決這個問題。在淘汰賽的js

我試圖做到這一點在淘汰賽選擇功能。當我選擇文本時,我想突出顯示邊框。

https://api.jquery.com/select/

眼下,在淘汰賽中,我能夠用點擊來突出邊界,但是當用戶在文本框中直接選擇文本,我無法突出的邊界。

下面是的HTML。該文本框中有很多內容。如果我的問題不清楚,請提問,以便我可以更好地解釋。

<input class="name" type="text" 
 
data-bind="click: function (y, event) { $root.SelectedWay($parent.Way); $root.SelectChild(y, event); $(event.target).select(); }, 
 
typeahead: { 'source': $root.All(), 'sorter': $root.ColorSorter, 'updater': $root.UpdateSelectedColor, 'highlighter': $root.HighlightColor, 'matcher': $root.MatchColor }, 
 
css: { 'selected': Selected }, 
 
value: Name" />

回答

2

如何自定義綁定。這裏是一個在邊境使用jQuery選擇

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" />

+0

嗨變成紅色,你已經可以看到在我的代碼輸入數據綁定。如何將此功能添加到現有的data-bind – Chatra

+0

認爲您只需將value:name更改爲jquerySelect:name即可。自定義綁定將取代你的值綁定 –

+0

嗨,我想我需要在我上面提到的代碼中調用這個$ root.SelectChild(y,event)。我怎樣才能將這個邊界改爲紅色。我提到的selectchild函數已經有了我需要做的代碼。 – Chatra