[javascript] エンターキー押下時にフォーム誤送信を防止するスクリプト
下記スクリプトで、エンターキーによるフォーム送信を無効にできる。
たまに使うこともあると思うので一応メモ。
layoutに追記※cakephpの場合
<?php echo $javascript->link('enter_block');?>
enter_block.js
function BlockEnterEvent() {
for(i = 0;i < 3;i++){
if (document.forms[i] != null) {
var elements = document.forms[i].elements;
for (var j=0; j < elements.length; j++) {
var e = elements[j];
if (e.type == "text" || e.type == "file"){
e.onkeypress=BlockEnter;
}
}
}
}
}
function BlockEnter(evt){
evt = (evt) ? evt : event;
var charCode=(evt.charCode) ? evt.charCode :
((evt.which) ? evt.which : evt.keyCode);
if ( Number(charCode) == 13 || Number(charCode) == 3) {
return false;
} else {
return true;
}
}
BlockEnterEvent();
