下拉列表中的onchange()没有调用该函数

时间:2015-07-01 07:10:21

标签: javascript html drop-down-menu onchange

以下是我的HTML代码:

我希望在选择选项时运行脚本。我认为我写的代码是正确的。 console.log()没有在控制台上打印任何内容,因此这意味着不会调用该函数。 有谁能够帮我?这是非常基本的代码,但我不知道它的错误。

ApplyPalette(...

pieSeries[i].Color = _currentColorPalette[i];

如果我更改了函数名称,则控制台未给出错误未定义的函数或未找到的函数。

如果我替换onchange =" getHours(this.value)" with onchange =" alert(this.value);"它也不起作用。

任何人都可以告诉jquery这样做吗?

3 个答案:

答案 0 :(得分:0)

你的回答似乎是正确的。

我做的唯一改变是将js分成另一个文件,并以我写的方式创建函数。

自:

<script type="text/javascript">
    function getHours(value){
        var hours = value;
        console.log(hours+ " hello");
    }
</script>

要:

var getHours = function (value) {
    var hours = value;
    alert(hours + " hello");
};

这种语法更改不应该有所作为。

答案 1 :(得分:0)

<!DOCTYPE html>
<html lang="en-US">
<head>

    <meta charset="UTF-8">

    <title>
        Exp
    </title>


</head>

<body>

<div class="form-group required">
    <label for="InputLastName">For how many hours ? <sup>*</sup> </label>
    <select name="serviceHours" id="hours" onChange="getHours()">
    <option value="" selected>---------</option>
    <option value="1">1 Hour</option>
    <option value="2">2 Hours</option>
    <option value="3">3 Hours</option>
    <option value="4">4 Hours</option>
    <option value="5">5 Hours</option>
    <option value="6">6 Hours</option>
    <option value="7">7 Hours</option>
    <option value="8">8 Hours</option>
    <option value="9">9 Hours</option>
    <option value="10">10 Hours</option>
    <option value="11">11 Hours</option>
    <option value="12">12 Hours</option>
    </select>



</div>

<script type="text/javascript">
        function getHours(){
            var hours = document.getElementById("hours").value;
            alert(hours);
        }
   </script>

</body>

</html>

以上代码以小时数提醒。也许这会有所帮助。

答案 2 :(得分:0)

终于知道错误的原因了。感谢 Chrome 检查 有些词在 js 中是保留的。您不应该在函数中为变量名使用 value,class 之类的名称。尝试将名称更改为“hijk”之类的名称,它会起作用。