为什么javascript无法在Google Chrome上运行?

时间:2013-11-21 10:03:22

标签: javascript html google-chrome web-applications

我一直面临javascript进入JS页面的问题,因为我是新手,我无法弄清楚为什么这段代码适用于Firefox但不适用于Google Chrome。 如果有人可以帮我解决这个问题,我将非常感激。

<script type="text/javascript">

function showFC(form) {

    var selElem = document.getElementById(form);
    var selIndex  = selElem.selectedIndex;

    document.form1.S4.options[0] = new Option("C=1",1);
    if(selIndex==0) {
        for(var i=0;i<10;i++) {
            var val = (i+1)+0.5;
            document.form1.S4.options[i+1] = new Option(val,val);
        }
    }
}
</script>

单击按钮时,它不会在选择中动态创建元素。

这是我的HTML代码:

<form name="form1" method="post" action="ComputeResult">
     ... other things
     ....
     ....
   <select name="S4" id="S4" onclick="showFC('S4')">
      <option value="1">FC</option>
      <option value=""></option>
   </select>
</form>

2 个答案:

答案 0 :(得分:0)

在JavaScript中,您有两种声明函数的方法。你可以这样声明:

function f() {}

var f = function(){}

两者之间的区别在于第一个是在运行时定义的,第二个是在分析时定义的(更多细节在这里:var functionName = function() {} vs function functionName() {})。

最有可能的情况是,在读取HTML之后声明了您的函数,因此该函数不存在。所以:

window.showFC = function(){}
showFC = function(){}

应该都有效。

答案 1 :(得分:0)

而不是onclick,使用onchange它将起作用

<select name="S4" id="S4" onchange="showFC('S4')">