2011-02-03 72 views
0

我有一個鏈接,它調用了一些javascript。 JavaScript填充表單值並提交它。在除IE瀏覽器外的所有瀏覽器中都能正常工作未在IE中填充表格值

頁面上的所有其他選項的鏈接,這就是爲什麼我還要這個選項是一個鏈接

感謝

 <script type="text/javascript"> 



     function timeZone(){ 

      today = new Date() 
      difference = today.getTimezoneOffset() 

      var field = document.getElementById("form").timezone 
      alert("test") 
      if(difference < 0){ 
       difference = difference * -1 
       field.value = "GMT+" + pad(Math.floor(difference/60), 2) + ":" + pad(difference%60, 2); 
      } 
      else{ 
       field.value = "GMT-" + pad(Math.floor(difference/60), 2) + ":" + pad(difference%60, 2); 
      } 
      form = document.getElementById('form'); 
      form.submit(); 


     } 

     function pad(num, digits) { 
      num = String(num); while (num.length < digits) { num="0"+num; }; return num; 
     } 

    </script> 









        <form method="get" action="ViewLog.do?page=1" id="form"> 
         <input id="timezone" name="timezone" type="hidden" value=""></input> 
         <img id="activityHistoryImage" Class = "navImage" src="imgs/history.png" alt="Activity history"/> 


         <a href="ViewLog.do?page=1"id ="activityHistoryButton"class = "navButton" onclick="timeZone(); return false">Activity history</a><br/> 
         <small class="navSubText">See your most recent activities </small> 
        </form> 
+1

始終以'var`聲明變量。 – Chris 2011-02-03 16:26:23

回答

1

Internet Explorer可能會或可能不會有與事實,你的問題已向您的form元素授予「表單」的ID;我想它可能會。通常,最好避免使用標籤名稱作爲idname屬性上的值。

而且,你的隱藏輸入元素有一個ID,但你不使用它來引用它。變化:

var field = document.getElementById("form").timezone 

var field = document.getElementById("timezone"); 
+0

謝謝,我會整理出來的 – bond425 2011-02-03 16:34:42

1
  1. 聲明變量與VAR
  2. 地方;他們應該在哪裏。
+0

感謝您的幫助,愚蠢的錯誤!現在正在寫入 – bond425 2011-02-03 16:34:04