jQuery と編集可能なプラグインを使用して、インライン編集可能なテーブルを作成しています。
これまでのところ問題なく動作しますが、ENTER を押したときにデータベースに送信して保存するだけです。ここで、ボックス間をタブで移動するのに役立つスレッドを見つけましたが、タブを押してもデータを送信しません。
ボックスを切り替えることができる私のコードは次のとおりです。
$('.editScheduleRow').bind('keydown', function(evt) {
if (evt.keyCode==9) {
var nextBox='';
var currentBoxIndex=$(".editScheduleRow").index(this);
if (currentBoxIndex == ($(".editScheduleRow").length-1)) {
nextBox=$(".editScheduleRow:first"); //last box, go to first
} else {
nextBox=$(".editScheduleRow").eq(currentBoxIndex+1); //Next box in line
}
$(this).find("input").blur();
$(nextBox).click(); //Go to assigned next box
return false; //Suppress normal tab
};
});
ENTER を使用して送信するには、これを使用します。
$(".editScheduleRow").editable("../../includes/ajax/save-schedule-row.php", {
"submitdata": function ( value, settings ) {
return { fieldname: this.getAttribute('fieldname'), rowID: this.getAttribute('id') };
},
});
提案のあるスレッドも見つけましたが、うまくいきませんでした: jEditable submit on TAB as as ENTER
さらに情報が必要な場合はお知らせください。