2014-10-28 48 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