在做Ajax表單提交的時(shí)候,需要阻止瀏覽器的默認(rèn)動(dòng)作,如果是谷歌或火狐等現(xiàn)在瀏覽器,直接用event.preventDefault();就好了,可悲的是,這方法到IE瀏覽器下面就不行了,甚至是IE10都不行。怎么解決呢?IE下面其實(shí)也有自己的阻止默認(rèn)行為的方法window.event.returnValue = false;,可這方法現(xiàn)代瀏覽器們不認(rèn),要兼容不同的瀏覽器,我們只好做一個(gè)判斷了,不同的瀏覽器用相應(yīng)支持的方法去阻止默認(rèn)行為就好了。代碼如下:
if(document.all){ //判斷IE瀏覽器
window.event.returnValue = false;
}
else{
event.preventDefault();
};
把這段代碼加到提交Ajax表單功能的上面就可以了。
或者,我們可以改寫一下preventDefault函數(shù),把兼容各個(gè)瀏覽器的代碼寫到這個(gè)函數(shù)里面:
function preventDefault(event){ if(document.all){ window.event.returnValue = false; }else{ event.preventDefault(); } }
把上面的函數(shù)添加到j(luò)s文件中,在其他地方引用的時(shí)候,就不用再判斷瀏覽器了,直接使用preventDefault();就可以了。



謝謝,解決了我的問題。