2014-10-28 95 views
0

我試圖找到一種方法來設置劍道按鈕的Click事件。 默認的動作是刷新我想擺脫的頁面。劍道UI按鈕 - On Click事件

我想按鈕被按下時,關閉當前窗口。 我正在處理ASP.NET MVC並使用html助手添加按鈕。

 @(Html.Kendo().Button() 
       .Name("closeFormBtn") 
       .Content("Close") 
       .Events(events => events 
        .Click("closeForm")) 
     ) 

不幸的是,上面的點擊事件不起作用,每次按下按鈕都會應用默認的刷新操作。 closeForm腳本工作正常,因爲它已經過測試。 我也試圖找到一種不使用腳本的方法,只是爲了在Click(「」)事件中插入代碼。

+0

我沒有看到您發佈的代碼有任何問題。您是否介意發佈「closeForm」函數,並確定它是全局聲明的?直接在助手寫你的功能,你可以簡單地寫像這樣的匿名函數:。點擊(「功能(E){DoStuff();}」) – Pluc 2014-10-28 12:43:55

+0

這似乎是工作的罰款,但與頁面的問題被重新加載仍然存在。我原以爲加入click事件會覆蓋默認的動作,但事實並非如此。 – Grentley 2014-10-28 13:52:25

+0

然後,我們沒有足夠的代碼來查看您的問題。還有其他的東西是錯的。你可以發佈生成的HTML/JavaScript? – Pluc 2014-10-28 17:51:15

回答

0

This should work。

function closeForm(e) { 
    e.preventDefault(); 

    //if that doesn't work, try adding: 
    e.stopPropogation(); 

    //your code 

} 
+0

我希望它有效,但它沒有。我已經嘗試了兩個選項,結果相同 - 頁面重新加載。 – Grentley 2014-10-28 14:26:10

0

在closeForm方法。在函數結尾處返回false。

function closeForm(){ 

    //Your Code 
    return false; 

} 
+0

我不認爲這應該是必需的,但絕對值得一試,因爲它是一個標準的JavaScript行爲。 – Pluc 2014-10-28 12:45:10

+0

不幸的是它不起作用。當我按下按鈕時,它仍然會重新加載整個頁面。 – Grentley 2014-10-28 13:48:05

+0

你可以發佈closeForm函數嗎? – 2014-10-29 06:17:25