Mat*_*att 5 javascript jquery mvvm kendo-ui kendonumerictextbox
看看在MVVM例子在这里:
如何在旋转事件上获取MVVM值(单击向上或向下箭头)
这是我尝试过的:
在旋转事件中,我试图这样做
$("#ntb").getKendoNumericTextBox().trigger("change");
Run Code Online (Sandbox Code Playgroud)
这有效,但有副作用.
如果DOM上有足够的元素,则旋转事件将继续触发.
将其插入HTML文件,将其加载到Chrome或FF中,然后在此行插入一个断点:
$("#ntb").getKendoNumericTextBox().trigger("change");
Run Code Online (Sandbox Code Playgroud)
继续点击继续,您将看到断点一次又一次地被击中.
在firefox中,如果我的DOM足够大,我会得到一个没有断点的repro.
我检查了你的jsbin,发现 html 和 javascript 中有一些错误。我认为当您测试不同的代码时您忘记了更正它。无论如何,我清理并更正了您的代码并将它们放入 this jsfiddle。
设置断点(debugger;)后,我看到你是对的onSpin,事件无限触发,但是如果你在事件中设置断点,就会发生这种奇怪的行为。如果您删除断点并放置console.log("onSpin,event triggered.");您会发现一切正常,并且事件仅触发一次。
我之前在不同的场景中遇到过这样的问题,例如使用而alert()不是出于console.log()调试目的。
代码:
var viewModel = kendo.observable({
selectedNumber: 0,
isEnabled: true,
isVisible: true,
onSpin: function () {
//debugger;
console.log("`onSpin` event triggered.");
$("#ntb").getKendoNumericTextBox().trigger("change");
},
onChange: function () {}
});
kendo.bind($("#example"), viewModel);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2073 次 |
| 最近记录: |