javascript - JavaScript 中未定义的函数

标签 javascript

我遇到了一个似乎没有意义的错误。 Chrome 的控制台显示 Uncaught ReferenceError: clicked_server is not Define

我几乎尝试了一切方法来修复它,但错误本身没有多大意义

<script>
    var selected_char = 'X';

    function draw_list () {
        // lets draw an x in all server in the array
        var server_id = 0;
        var draw_servers = new Array();
        draw_servers = document.getElementById("server_arr").value.split(";");

        foreach(draw_servers as server_id) {
            document.getElementById("server("+server_id+")").innerHTML = selected_char;
        }    
        // Update the counter and servers array
        server_count_field.innerHTML = "Buy Server("+servers_array.length+")";
    }

    function clicked_server(server_id) {
         var clicked = document.getElementById("server("+server_id+")").innerHTML;
         if (clicked == selected_char) remove_server(server_id);
         else add_server(server_id);
    }

    window.onload = draw_list();


    function add_server(server_id) {
        // select a server for purchase
        var servers_array = document.getElementById("server_arr").value;

        if(servers_array.length > 0) servers_array = servers_array + ";" + server;
        else servers_array = server;

        document.getElementById("server_arr").value = servers_array;
    }
</script> 

我的 HTML 工作正常。在这里

<form action="dobuyserver.php" method="POST">
    <input type="hidden" name="server" id="server_arr"/>
    <input type="submit" value="Buy Server(0)" id="server_count"/>
    </form>

<td style="background-color:##000000;" onclick="clicked_server(9)"><font color="#FFFFFF">
                        <strong>
                        <span id="server(9)">
                        &nbsp;
                        </span>
                        </strong>
                        </font></td>

最佳答案

根据我的理解,你需要使用

 window.onload = draw_list;  

而不是

 window.onload = draw_list();

关于javascript - JavaScript 中未定义的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21222870/

相关文章:

javascript - 使用 JavaScript 显示基于时间的甘特图

JavaScript 在我的框架中不起作用?

javascript - 未知选项 : package. json.presets

javascript - Angular JS - 嵌套模板(双大括号 {{}} )

java - 无法使用 document.getElementById 获取元素,返回 null

javascript - 如何使用 Sinon.js stub 事件发射器

javascript - 文字和对象——什么时候使用什么?

javascript - 为什么函数对象的实例没有继承函数原型(prototype)属性?

javascript - 使用 Javascript 创建倒计时

javascript - 为什么 "this.props.match.params.authorName"在 ReactJS 中给出未定义/空值