Graham は、Steve の記事への素敵なリンクを提供しています。
なので記事とUJSのコードを元に、UJSのconfirm
メソッドを上書きすることができます。
元のコードはシンプルです( https://github.com/rails/jquery-ujs/blob/master/src/rails.js )
// Default confirm dialog, may be overridden with custom
// confirm dialog in $.rails.confirm
confirm: function(message) {
return confirm(message);
},
次に、バニラ Javascript を使用して、アプリの js ファイルに次のようなものを記述して、このメソッドをオーバーライドできます。
$.rails.confirm = function(message) {
if (confirm(message)) {
return true; //UJS will continue doing his job
} else {
console.log('canceled') // Do you own logic
return false; //Make sure to return false at the end
}
}
jsfiddle デモ: http://jsfiddle.net/billychan/GS5hZ/