我正在尝试为input-elements定义一个自定义标记,只有当input-element失去焦点时才会触发。 当它触发时,它应该修改数据链接的项目。 数据操作正在进行后更改。
//jsview html tag
<script id="input_text_layout" type="text/x-jsrender">
<input type="text" data-link="{:value:} {testvalidation value}">
</script>
//jQuery Part
$.views.tags({
testvalidation: {
baseTag: "radiogroup",
linkedElement: "select,textarea,input",
init: function(tagCtx, linkCtx, ctx) {
var tag = this;
},
onAfterChange : function(ev, eventArgs) {
$.observable(this.linkCtx.view.data).setProperty("info_text", "Testinformation");
}
}
});
})(this.jQuery);
答案 0 :(得分:1)
如果您希望在模糊事件上触发更新,而不是在keydown / input上触发更新,则可以设置trigger=false
。该设置可以是全局,单个标签或标签定义。
见
在自定义标记的标记定义上设置trigger=false
,如下所示(您的标记):
testvalidation: {
linkedElement: "input",
trigger: false,
onAfterChange : function(ev, eventArgs) {
$.observable(this.linkCtx.view.data).setProperty("info_text", "Testinformation");
}
}
或来自 http://www.jsviews.com/#samples/tag-controls/simple-textbox 的
:textbox: {
linkedElement: "input",
template: "<input/>",
onUpdate: false,
trigger: false,
dataBoundOnly: true
}