gpt4 book ai didi

dojo - 如何防止自动调整包含 dijit 表单的 dijit.dialog 大小?

转载 作者:行者123 更新时间:2023-12-02 00:58:25 25 4
gpt4 key购买 nike

我有一个包含模板化表单的dijit.dialog。当对话框可见并且我调整窗口大小时,表单高度会减小(即使我增加/减小窗口大小)。是什么导致了这种奇怪的行为以及如何防止它?谢谢。

代码:@LoginForm.html--

<form  data-dojo-attach-point="containerNode"
data-dojo-attach-event="onreset:_onReset, onsubmit:_onSubmit">
..
..
</form>

@LoginForm.js--

dojo.declare("LoginForm", [dijit.form.Form], {

widgetsInTemplate: true,
templateString: dojo.cache('template/LoginForm.html'),

name: 'Login',
'class': 'loginForm',
'context': {'message':'hello'},

action: '/authenticate',
method: 'POST',
onSubmit: function(event) {
// something here
},
postCreate: function(){
//
},
startup: function(){
this.inherited(arguments);
}
});

@index.html(这显示在浏览器上,该浏览器调用 LoginForm.js,创建小部件的实例,将其放置在 dojo.body() 处并显示它)--

最佳答案

我对此进行了几个小时的研究,并发现了踪迹。

当窗口大小调整时,它会尝试调用 Form.resize() ,期望表单对其子窗口调用 resize 。但由于 Form 不是布局小部件,所以什么也没有发生。我重写了表单的 resize()(什么都不做!),这个 bug 似乎消失了。

我仍然不确定我是否有完整的解决方案(毕竟覆盖不是修复某些问题的方法)。如果有人有更好的解释/解决方案,请启发我。谢谢。

关于dojo - 如何防止自动调整包含 dijit 表单的 dijit.dialog 大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8151028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com