IE中未使用javascript填充表单值

IE中未使用javascript填充表单值,javascript,html,Javascript,Html,我有一个链接调用一些javascript。javascript填充表单值并提交它。适用于除internet explorer以外的所有浏览器 页面上的所有其他选项都是链接,这就是为什么我也希望这个选项是链接 谢谢 <script type="text/javascript"> function timeZone(){ today = new Date() difference = today.ge

我有一个链接调用一些javascript。javascript填充表单值并提交它。适用于除internet explorer以外的所有浏览器

页面上的所有其他选项都是链接,这就是为什么我也希望这个选项是链接

谢谢

        <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>

函数时区(){
今天=新日期()
差异=今天。getTimezoneOffset()
var字段=document.getElementById(“表单”).timezone
警报(“测试”)
如果(差异<0){
差异=差异*-1
field.value=“GMT+”+pad(数学地板(差值/60),2)+“:”+pad(差值%60,2);
}
否则{
field.value=“GMT-”+pad(数学地板(差值/60),2)+“:”+pad(差值%60,2);
}
form=document.getElementById('form');
表单提交();
}
功能板(数字,位数){
num=String(num);while(num.length
查看您最近的活动

Internet Explorer可能有问题,也可能没有问题,因为您已为
表单
元素指定了“表单”id;我想可能是的。通常,最好避免使用标记名作为
id
name
属性的值

此外,您的隐藏输入元素有一个id,但您没有使用它来引用它。更改:

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

  • var声明变量
  • 地点
    它们应该在哪里

  • 始终使用
    var
    声明变量。实际上这并没有错:)。Javascript允许跳过
    但无论如何都不是好的样式。
    
    var field = document.getElementById("timezone");