サブスクリプションがある選択コントロールがあります。剣道スタイルを適用しない場合、コントロールは期待どおりに動作し、サブスクリプション コードは 1 回起動し、onBlur またはその他の理由で再起動しません。kendoDropDownList を適用すると、サブスクリプションの動作が一貫して不安定になります。
$("select").kendoDropDownList();
不安定な動作は値の選択であり、サブスクリプションが起動します。別のコントロールをクリックすると、サブスクリプション イベントが再び発生し、選択コントロールが値を未変更として表示している場合でも、値は未定義になります。その後の選択では、期待どおりにサブスクリプションが起動されます。剣道を使用している場合、選択コントロールで下/上矢印を使用しても起動しません。
<select id="newExperienceFrequency" data-bind="value: frequency, options: $root.controls.frequencies, optionsText: 'name', optionsValue: 'id', optionsCaption: 'Select', event: { mouseover: mouseoverFrequency, mouseout: mouseoffFrequency }" class="select frequencyTip" title="foo"></select>
self.proficiency.subscribe(function () {
self.proficiencyId = self.proficiency();
console.log('proficiency subscribed: ' + self.proficiency());
my.setCounterHint($("#newExperienceFrequency").val(), self.proficiency());
var tip = "Don't just list those skills your strongest in. It's just as important to add new skills you are aquiring!";
var result = $.grep(my.ajaxData.member.Proficiencies, function (e) { return e.Id == self.proficiency(); });
if (result.length == 0) {
// not found
} else if (result.length == 1) {
// access the foo property using result[0].foo
tip = result[0].Name + ':\nAutonomy: ' + result[0].Autonomy + '\nContext: ' + result[0].nContext + '\nKnowledge: ' + result[0].Knowledge + '\nWorkmanship: ' + result[0].Workmanship;
} else {
// multiple items found
}
$(".proficiencyTip").attr('title', tip).attr('alt', tip);
$(".proficiencyQuestionMark").fadeIn('slow');
});
これは既知の問題ですか、それとも単に何か間違っているのでしょうか? Knockout で Kendo を使おうとすることで、より多くの仕事を自分で行うことができますか? 剣道を使ってノックアウトを落としたら、これらの問題は解決しますか?