如何在extjs中添加eventlistener

时间:2016-01-27 06:07:48

标签: javascript jquery html extjs

我不知道如何创建一个小提琴,但是我创建了JS。请检查link。想象一下(button id: button2)上有一个按钮(src : 'ccc.de';),并且当我点击那个按钮(在ccc.de中)时,我应该在js

中捕捉到该事件

我的实际src页面不是ccc.de,我的src页面包含一个带有按钮(button id: button2)的asp。

提前谢谢

3 个答案:

答案 0 :(得分:0)

你的问题与角度或JSON无关。

如果要将事件监听器附加到按钮,可以通过执行以下操作来尝试阻止按钮的默认操作。

$("#btn").click(function(e){
 e.preventDefault();
 function_to_call();
});

答案 1 :(得分:0)

您可以使用event delegation

执行此操作
port
在点击事件中

//而不是 $(document).ready(function() { $(document).on('click', "#button2", function() { alert("button2 clicked"); }); }); ,您应该使用document

的父级

或者您可以使用

$button2

答案 2 :(得分:0)

您的代码是ASP代码,还是ASP.NET WebForms,也许是ASP.NET MVC?

小提琴(https://fiddle.sencha.com/#fiddle/14bj)我看到iFrame。请记住,如果您在iFrame中的按钮,以及您在所有者文档中设置事件处理程序的代码,您应该搜索按钮以在iFrame中设置您的事件。它不会在父文档中出现。也许问题在这里。如果您在iFrame中有PostBack(或其他东西,重新加载页面)和button2,那么botton2事件处理程序将在iFrame重新加载后丢失。所以,你需要再次为事件设置监听器,因为重载后它将是新的button2(在iFrame中)。

如果你使用ExtJS,那么最好通过组件配置在ExtJS按钮上设置事件。有点像这样:

Ext.create('Ext.Button', {
text: 'Button2',
renderTo: Ext.getBody(),
handler: function() {
    alert('You clicked the button 2!');
}});

此示例有两种方式:https://fiddle.sencha.com/#fiddle/14hs

为了更好地理解您的问题,请提供此页面的完整代码(如果您不能使用小提琴替代asp,请使用http://pastebin.com/或其他发布来源的服务)。

我希望我写了一些有用的东西(但不是舒尔)。祝你好运!