所以我有一个html页面,里面有这样的片段
<span dojoType='dijit.InlineEditBox' editor='dijit.form.Textarea' id='actionDetails13' value='Leave admit source entered during Express Registration' autoSave='false' noValueIndicator='[Details]'>
<script type='dojo/connect' event='onChange' args='value'>
</script>
</span>
这在chrome和IE中运行得很好但是当页面非常大时,只有Internet Explorer会抛出错误
DOM Exception: NOT_FOUND_ERR (8)
将不再显示那些特定的inlineeditbox。因此,可能有1000个内联编辑框可以渲染70%。
如果我注释掉脚本type ='dojo / connect',则不会抛出任何错误。
我认为这可能是IE的一些限制,但任何想法是什么导致了这个?
答案 0 :(得分:0)
也许这就是你连接onClick-event的方式。
尝试如下:
<script type="dojo/on" data-dojo-event="click">
on(registry.byId("button1"), "click", function(){
console.log("I was clicked!");
});
</script>
此致,Miriam
答案 1 :(得分:0)
我建议使用下面的代码。它对我有用。
require([
"dojo/dom-attr",
"dojo/on",
"dojo/domReady!"
], function ( domAttr,on) {
var actionDetails13 = dojo.byId("actionDetails13");
var handle = on(actionDetails13 , "change", customFunction);
function customFunction() {
var actionDetails13Value= domAttr.get("actionDetails13", "value");
//your code
};
});
价:
https://dojotoolkit.org/reference-guide/1.9/dojo/connect.html
https://dojotoolkit.org/reference-guide/1.9/dojo/dom-attr.html