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);
},
然后,使用 vanilla 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/