2016-01-27 77 views
0

我不知道如何在小提琴的ASP,但我創造了JS.Please檢查link .Imagine我有(src : 'ccc.de';)按鈕(button id: button2),當我點擊該按鈕(在ccc.de)我應該抓住在JS如何添加在ExtJS的一個事件偵聽

我的實際SRC頁面的事件不是ccc.de,我SRC頁面包含上有一個按鈕(button id: button2)一個asp。

預先感謝您

+0

[如何將onclick事件添加到使用javascript的元素](http://stackoverflow.com/questions/20018170/how-to-add-a-onclick-event-to-an-element-使用-javascript) – Rajesh

+0

不是重複的,我想 –

回答

0

您的問題與angular或JSON無關。

如果你想附加一個事件監聽器到你的按鈕,你可以嘗試通過這樣做來阻止按鈕的默認動作。

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

嘿抱歉的標題我忘了更改標題,並感謝您的答覆。 但我很遺憾地說,你給的解決方案不起作用 –

+0

你可以做一個小提琴嗎?我不明白爲什麼它不應該工作。你是否將#btn改爲任何按鈕的ID? – pecey

+0

嘿我不知道如何創建一個asp的小提琴,但我創建了JS 請檢查鏈接:https://fiddle.sencha.com/#fiddle/14bj 想象我有一個按鈕(按鈕ID:button2)在src上:'https:// ccc。德',當我點擊該按鈕,我應該趕上在js 謝謝 –

0

可以使用event delegation

$(document).ready(function() { 

     $(document).on('click', "#button2", function() { 
      alert("button2 clicked"); 
     }); 
}); 
在點擊事件

//而不是document做到這一點,你應該使用的$button2

父母或者你可以使用

$(document).ready(function() { 

     $("#button2").on('click', function() { 
      alert("button2 clicked"); 
     }); 
}); 
+0

工作小提琴http://jsfiddle.net/30w751ew/3/,但不在我當地工作 –

0

你的代碼是ASP代碼,或ASP.NET WebForms,也許是ASP.NET MVC?

在小提琴(https://fiddle.sencha.com/#fiddle/14bj)我看到iFrame。請記住,如果您在iFrame中的按鈕以及您在擁有者文檔中設置事件處理程序的代碼,則應該搜索按鈕以在iFrame中設置您的事件。在母文檔中不會出現。也許問題在這裏。如果你有PostBack(或其他的東西,這個重新加載頁面)和button2在iFrame中,那麼在iFrame重新加載之後,botton2事件處理程序將會丟失。因此,您需要再次設置事件監聽器,因爲重新加載後(在iFrame內)它將是新的button2。

如果您使用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

爲了更好地理解你的問題,你culd提供此頁面的完整代碼(如果你不能使用搗鼓ASP,使用http://pastebin.com/或其他發佈來源的服務)。

我希望我寫了一些有用的(但不舒服)。祝你好運!

+0

感謝您的回覆我的情況有點不同,請整個代碼 我的extjs代碼創建窗口是http://pastebin.com/Y0X6fqSW(見行90) 我在窗口中調用的ASP代碼是http://pastebin.com/QGKTSC2x(請看第430行的按鈕) –

+0

初看,我看到你想通過點擊iFrame中的按鈕來關閉ExtJS窗口: 對不對? – Selmaril

+0

是正好你是100%正確 –

相關問題