昨年からASP.NETのお仕事が数件ほど続いています。
Webアプリを作っている人にとっては常識なのかもしれませんが、
TextBoxでEnterキーを押すとSubmitされてしまう場合があります。
またReadOnlyなTextBoxでBackSpaceキーを押すと「戻る」ボタンと同じ動きをしてしまいます。
JavaScriptでTextBoxにEnterキーや、ReadOnlyなTextBoxにBackSpaceキーを入力できないようにします。
EnterキーはKeyCode=13、BackSpaceキーはKeyCode=8です。
ReadOnlyな場合はEnterキー、BackSpaceキーを入力できないようにします。
ReadOnlyでない場合はEnterキーのみを入力できないようにします。
JavaScript
function cancelSubmit() { if (window.event.srcElement.readOnly == false) { if (window.event.keyCode == 13) { return false; } } else { if (window.event.keyCode == 13 || window.event.keyCode == 8) { return false; } } }ReadOnlyでないTextBoxの場合はonKeyPressで処理します。
<asp:TextBox ID="TextBox1" runat="server" onKeyPress="return cancelSubmit();" />ReadOnlyなTextBoxの場合はonKeyDownで処理します。
<asp:TextBox ID="ReadOnlyTextBox1" runat="server" ReadOnly="True" onKeyDown="return cancelSubmit();" />
コチラの方法の方が楽です↓↓
ASP.NET EnterキーでSubmitさせないようにする。
0 件のコメント:
コメントを投稿