如何从代码后面调用这个javascript函数
我在我的页面上放了javascript创建的控件(http://www.dariancabot.com/projects/jgauge_wip/)。
$(document).ready(function () { var ctl; ctl = new jGauge(); ctl.init(); )}
假设我需要将几个参数传递给init
。 像… ctl.init(a, b);
从代码背后,我怎样才能实现呢? 我试过这样的事……
string script2 = String.Format("init('{0}','{1}')", param1, param2); this.Page.ClientScript.RegisterStartupScript(this.GetType(), "initialize control", script2, true);
但它不起作用。 我有:
ReferenceError: init is not defined
init是jGauge实例中的一个方法。 所以你必须在调用那些mathode之前进行实例化。 试试吼叫:
string script2 = String.Format("var ctl; ctl = new jGauge(); ctl.init('{0}','{1}');", param1, param2); this.Page.ClientScript.RegisterStartupScript(this.GetType(), "initialize control", script2, true);
另一种方法是使用公共变量,
你的脚本就像:
$(document).ready(function () { var ctl; ctl = new jGauge(); ctl.init(<%=param1 %>, <%=param2 %>); )}
并且在代码后面有两个公共字符串
public string param1 = string.Empty; public string param2 = string.Empty;
在page_load
或任何其他事件中,您可以正常设置这两个变量的值,例如:
param1 = "100";
其余代码将按原样运行。