根因(核实 bricks/popup.js 源码): 1. popup_options 显式写了 auto_dismiss:true,Popup 构造时把 click 绑到整个 bricks.Body, 而 click_outside 只判断 event.target != this.dom_element(无子树 contains 判定), 点击弹窗内任何子元素(输入框/下拉/按钮)都命中 → 立即 dismiss。改为 auto_dismiss:false。 2. 加 dismiss_events:['cancel','submited'] 让 Form 的取消/提交完成关闭弹窗。 但 set_dismiss_events 只绑 load_content 返回的根 widget,而 dispatch 用 new Event() 不冒泡(bubbles:false) —— 原根节点是 VBox、事件由子 Form 发出,绑不上。 故把 Form 提为 new_kb_form.ui 根 widget,标题改用 Form 自带 title 选项。 (title 不是 Popup 的合法 option,仅 PopupWindow/Form 支持)
Description
No description provided
Languages
Python
99%
JavaScript
1%