我希望能够将onBlur / onkeypress / onChange事件添加到表单上的所有TypeAhead字段,而不是让开发人员在Designer客户端中选择每个字段。我唯一无法处理的是onChange事件。
当用户在TypeAhead中选择某些内容时,在Domino Designer中将代码直接添加到事件时会触发onChange事件 - 因此我应该能够使用代码复制该功能。
如果我的typeAhead字段名为inputText2,我以为我可以执行以下操作
var widget = dojo.byId("#{id:inputText2}")
dojo.connect(widget, 'onChange', function (){
alert('1')
});
然而,这似乎不起作用......
我尝试使用小写onchange
var widget = dojo.byId("#{id:inputText2}")
dojo.connect(widget, 'onchange', function (){
alert('1')
});
没有运气
我试过
var widget = dijit.byId("#{id:inputText2}");
但是事件无法完全选择元素
那么在typeAhead中选择一个选项时,我需要做些什么才能触发onchange事件?
答案 0 :(得分:1)
我找到了一个解决方案.....并不理想,但它暂时起作用 - 虽然不是通用的,但却是一个开始
复制XPages的方式....将其添加到页面
function view__id1__id2__id31__id50_clientSide_onchange(thisEvent) {
alert('me')
}
然后
dojo.addOnLoad(function(){
XSP.addOnLoad(function() {
XSP.attachEvent("X1","view:_id1:_id2:_id31:inputText2", "onchange", view__id1__id2__id31__id50_clientSide_onchange, false, 2);
});
});
});
X1必须是唯一的,但其他一切都可以计算
感谢Serdar Basegmez