2010-10-26 119 views
0

我正面临一个令我疯狂的问题。我有一个asp .net mvc页面(.ascx)。这个视图有一个可以被ajax提交给控制器动作的表单。我有一个提交表单的ajax提交按钮。asp .net mvc ajax提交

在视图中我有一些,如果条件如下

 
If(Model.SampleID.HasValue) 
{ 
    
    alert('sample created'); 
    alert(''); 
    
} 

此代码工作正常时,我打了ajax提交按钮,我的意思的JavaScript被执行。但是当我按下回车键时,会发生同样的帖子,但JavaScript代码根本不会执行。我不知道为什么会发生这种情况。

任何想法或意见?

+1

也许你可以发布包含您的形式和更小的jQuery的 – 2010-10-26 15:49:08

回答

0

只是一个想法。可能是因为你的ajax提交按钮只能绑定到click事件。如果是这样,你将不得不将它绑定到按键事件。更好的是你发布的HTML。

0

把下面的代码在的document.ready()函数

$("input").keydown(function(e){ 
    if(e.which==13) 
    { 
     //Your Submit Method 
    } 
}); 
+0

的这是不好的做法在html 。如果他们选择按钮并按下空格键怎么办?这将失败并且不处理所有情况。 – 2011-11-28 20:29:34

0

我打算从谁张贴,说你要绑定的jQuery的错误您的表单提交别人不同,你需要重做。 不要绑定鼠标点击按钮和不要检查keydowns。

而是,窗体有一个可以绑定到的submit事件。他们是否点击提交按钮,按回车键或选项卡到按钮并按空格键都无关紧要。绑定正是如此:

$('#yourformcontainer form').submit(function() { 
    //Your custom submit code here 
    //return false if you want to abort the form submission, true (or nothing) otherwise 
}); 

这使得你的HTML表单呈现这样的假设:

<div id="yourformcontainer"> 
    <form> 
     ... 
     <input type="submit" value="submit" /> 
    </form> 
</div>