熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> ASP編程 >> 正文

asp.net回車觸發button按鈕事件

2013-11-15 12:54:59  來源: ASP編程 

   深層次來說這不是 ASPNET 的問題 而是 html form 的 submit 按鈕就是如何設計的

  當你的光標焦點進入某個表單元素的時候會激活該表單中第一個(流布局順從左到右從上至下) type=submit 的按鈕(假如有)等待響應回車事件並提交該form

  你可以測試一下代碼

  <form action=>

  <input type=text />

  <input type=submit value=submit />

  </form>

  <form action=>

  <input type=text />

  <input type=button value=submit />

  </form>

   在 ASPNET 中 button 默認呈現為 <input type=submit> 此時不要額外腳本提交form submit 按鈕就是設計用來提交form

  而在 x 中則呈現為 <input type=button onclick=_doPostBack() /> 此普通 button 不具備 submit 的上述默認行為

   禁用此默認行為有法二

  設置 form 元素的 defualtButton 為你希望響應回車的真正按鈕如下

  <form id=form runat=server defaultbutton=Button>

  注意 defaultButton = < <TargetButtonID>> 因此這對復合控件中比如模板的 Button 可能無效(未測試)

  修改 button 呈現方式 UseSubmitBehavior=false

  <asp:Button ID=Button runat=server Text=Button onclick=Button_Click UseSubmitBehavior=false />

  (csdn 曉風殘月)

  另外可以通過控制焦點的方式過濾回車實踐需要記錄一筆的是獲取當前頁面焦點所在控件的ID

  documentactiveElement

  對於AspNet我們在TextBox中輸入內容後按下enter鍵後就執行Button的click方法那麼在page_load事件方法中寫

  TextBoxAttributesAdd(onkeydown if(eventwhich || eventkeyCode){if ((eventwhich == ) || (eventkeyCode == )) {documentgetElementById(+ButtonUniqueID+)click();return false;}} else {return true}; );


From:http://tw.wingwit.com/Article/program/ASP/201311/21875.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.