2011-03-04 69 views
0

嗨大家, 我正在一個項目,這是一種調查。在這裏,我們導航到另一個問題的不同頁面。 一旦提出問題,用戶提交他的回覆。提交表單後,該頁面被重定向到下一個問題。以下是啓用它的JavaScript代碼。document.Form.submit沒有提交與window.location在鉻和一些IE 7和8

function nextPage (nurl,findate,user_type) { 

       if(((findate == null)||(findate=="0000-00-00"))&&((user_type != "survey owner"))&&(user_type !="PI admin")){ 

        document.showQuestionAnswerForm.submit(); 
        scode= document.getElementById('surveyCode').value; 
        parent.SurveySummaryFrame.location="load_survey.php?scode="+scode + "&template=" + '<? echo $_GET["template"]?>'; 

       } 
       window.location.href=nurl; 

      } 

此代碼工作正常FF和IE6在大部分的時間,但無法與使用IE7和IE8和谷歌瀏覽器每次倍。如果我刪除window.location.href=nurl;它提交它。但沒有評論window.location.href=nurl;它移動到下一個網址,而不保存用戶的響應。 我的猜測是由於某些瀏覽器的處理速度很高,它可能會直接轉到下一個網址,而不會離開前面的部分提交。 (強硬的想法,我希望) 我需要一個很好的解決方案來解決它。任何人都可以幫助

回答

1

我建議您在成功提交ajax表單後,使用ajax提交表單並重定向。

使用jquery的post函數是最簡單的方法之一。但你必須先了解jquery。 http://api.jquery.com/jQuery.post/

+0

我不知道Ajax是有辦法,我可以學習使用jQuery的崗位職能與阿賈克斯 – Pallav

+0

要做到這一點的一個最簡單的做法。但你必須先了解jquery。 – Quincy

1

至於使用Ajax;爲什麼我們應該在方法.submit已經存在並且應該完成這項工作的時候。

反正....

我遇到了同樣的問題。 除谷歌瀏覽器之外,所有瀏覽器中的所有內容都可以正常使用。

我試圖

document.NonJava.submit(); 
document.forms[0].submit(); 

和一些其他的東西。

這是什麼工作最終工作:

var frm = document.getElementById('NonJava'); 
frm.submit(); 

變戲法似的