我的應用程序擁有數百頁。現在我必須在form的onSubmit上附加一個事件'disablePage'。我不想去的每一個頁面,寫上:如何將事件附加到鏈接早期附加方法的onSubmit事件?
<form name="frmname" onSubmit="disablePage();">
我在做什麼現在的問題是: -
來自common.js文件摘錄; [包括在所有頁]
/* we have to attach 'attachFormSubmit' method on onLoad event,
otherwise forms[0] will always be null. If there is any alternative,
then please suggest one */
if (window.addEventListener){
window.addEventListener('load', attachFormSubmit, false);
} else if (window.attachEvent){
window.attachEvent('onload', attachFormSubmit);
}
function attachFormSubmit(){
forms = document.getElementsByTagName('Form');
if (forms[0]){ // there is only one form in all pages
if (forms[0].addEventListener){
forms[0].addEventListener('submit', disablePage, false);
} else if (forms[0].attachEvent){
forms[0].attachEvent('onsubmit', disablePage);
}
}
}
function disablePage(){
document.getElementById("pageHideDivID").style.display='inline';
}
直到此時一切都很好,disablePage()連接到所有頁面的形式。
但問題是,如果有人已經附加任何方法onSubmit或onLoad那麼也應該執行。我猜根據我的代碼,代碼將永遠不會被執行。 我該怎麼做才能鏈接他們的方法呢?
No JQuery please
那麼這意味着我不必擔心鏈接方法嗎? – 2009-10-23 14:29:28
我這麼認爲。你有沒有嘗試過?你可以附加兩個事件,看看是否都生效。 – ujh 2009-10-26 13:11:43