之前寫了一篇-JS解決submit同時存入AJAX跟POST外部傳參先後順序問題的教學文章,
基本上這方法是沒問題的,程式邏輯沒錯,但是現卻遇到一個問題導致原本鎖住外連的preventDefault()函數無效,就是IE9瀏覽器,IE9完全不支援e.preventDefault();方法,所以就無法形成先讓程式跑AJAX後在POST參數出去的流程,解決的方法只好加上整個preventDefault()兼容判斷流程,CODE如下:
function cancelHandler(event) {
var event = event || window.event;//兼容IE
//取消事件相關的預設行為
if (event.preventDefault) //標準技術
event.preventDefault();
if (event.returnValue) //兼容IE9之前的IE
event.returnValue = false;
return false; //用於處理使用對象屬性註冊的處理程序
}
這樣IE9包含以上的瀏覽器preventDefault()就都能正常運作了,有需要的朋友參考看看!!
教學撰寫:徐嘉裕 Neil hsu
基本上這方法是沒問題的,程式邏輯沒錯,但是現卻遇到一個問題導致原本鎖住外連的preventDefault()函數無效,就是IE9瀏覽器,IE9完全不支援e.preventDefault();方法,所以就無法形成先讓程式跑AJAX後在POST參數出去的流程,解決的方法只好加上整個preventDefault()兼容判斷流程,CODE如下:
function cancelHandler(event) {
var event = event || window.event;//兼容IE
//取消事件相關的預設行為
if (event.preventDefault) //標準技術
event.preventDefault();
if (event.returnValue) //兼容IE9之前的IE
event.returnValue = false;
return false; //用於處理使用對象屬性註冊的處理程序
}
這樣IE9包含以上的瀏覽器preventDefault()就都能正常運作了,有需要的朋友參考看看!!
教學撰寫:徐嘉裕 Neil hsu
留言
張貼留言