【问题标题】:How to retrieve correspoding form element from dojo event object?如何从 dojo 事件对象中检索相应的表单元素?
【发布时间】:2011-05-30 20:38:55
【问题描述】:

如果有一个带有按钮的 html 表单,使用普通的 html,我们将能够从 onclick 事件对象中检索表单元素,如下所示。

ev.target.form

由于 Dojo 包含一个它的 normalize 事件对象,我们如何在单击按钮时检索事件生成的表单元素? (我需要这个,因为我的 dom 树包含相同表单元素的重复)

谢谢, 尼普

【问题讨论】:

    标签: dojo


    【解决方案1】:
    dojo.connect(dojo.byId("formsContainner"), "click", function(evt){
       dojo.stopEvent(evt); // assuming you don't want to actually go to a new page
    
       var n = evt.target;
       while(n.tagName != "form"){
          if(n.tagName == "body") break;
          n = n.parentNode;
       }
       if(n.tagName == "form"){
          myFormMethod(n);
          return;
       }
       console.error('no form for button - clicked on something else')
    });
    

    【讨论】:

    • 感谢您的回复,我的表单没有预定义的 ID。所以基本上我需要的是从 evt 对象中检索由 dojo 分配的随机生成的表单 id
    猜你喜欢
    • 2022-09-26
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-14
    • 2020-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多