如何在没有事件的情况下调用js函数

时间:2011-08-23 22:31:04

标签: javascript jquery html events function

如何在html文件中调用js函数,没有事件触发器?我想要代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script src="jquery.flot.js"></script>
<script src="chart.js"></script>

<title>
</title>
</head>

<body>

<div id="chart1" style="width:600px;height:300px"></div>

show_graph({{ chart_type }}, {{ data }}, {{ options }});

</body>

</html>

但这只会导致函数调用被打印到屏幕上,而不是实际执行的函数。

e.g。我越来越 show_graph(bar,[[1,2000],[2,50],[3,400],[4,200],[5,5000]],['Foo']);

我该怎么办?

编辑:

我很感谢您的反馈意见,但我尝试将其包装在脚本标记中并获得“参数数量无效”错误。

javascript是:

function show_graph(charttype, data, options){

    var chart_options = {
        series: {
            charttype: {
                show: true
            }
        }
    }

    var plot = $.plot($("#chart1"), [data], [chart_options]);
}

所以我想真正的问题是“当我传递3个参数并接受3个参数时,为什么我得到”参数数量无效“错误?”

6 个答案:

答案 0 :(得分:14)

将其包裹在<script>代码中:

<body>

<div id="chart1" style="width:600px;height:300px"></div>

<script type="text/javascript">
    show_graph({{ chart_type }}, {{ data }}, {{ options }});
</script>

</body>

...虽然我不知道模板是如何影响的。我想它会呈现相同的效果。

答案 1 :(得分:4)

您需要将函数调用包装在脚本标记中,如下所示:

<script type="text/javascript">
show_graph({{ chart_type }}, {{ data }}, {{ options }});
</script>

如果您需要验证为XHTML,您还应该使用CDATA进行换行。请参阅When is a CDATA section necessary within a script tag?以获取对此的参考。

答案 2 :(得分:4)

又一个答案:

<script type="text/javascript">
    (function() {
        // The following code will be enclosed within an anonymous function
        var foo = "Goodbye World!";
        document.write("<p>Inside our anonymous function foo means '" + foo + '".</p>');
    })(); // We call our anonymous function immediately
</script>

答案 3 :(得分:3)

将其放入<script>标记。

<script type='text/javascript'>show_graph({{ chart_type }}, {{ data }}, {{ options }});</script>

答案 4 :(得分:3)

添加脚本标记。

<script>
show_graph({{ chart_type }}, {{ data }}, {{ options }});
</script>

答案 5 :(得分:0)

您应该在加载页面时调用该函数。要使用jQuery执行此操作,请使用以下代码:

<script type="text/javascript">
  $(document).ready(function() {
    show_graph({{ chart_type }}, {{ data }}, {{ options }});
  });
</script>