ASP.NET使用RegisterStartupScript调用定义的JS函数

时间:2013-03-06 20:28:14

标签: javascript asp.net function call invoke

在ASP.NET中,我们使用:

调用定义的js函数
Page.ClientScript.RegisterStartupScript(GetType(), "", "JSFuncNameHere();", true);

我想知道:

  • 为什么没有任何方法,其名称如下:Page.ClientScript.CallJSScript(“someJSFunc”);
  • 为什么upper-method需要反射方法GetType()?在运行时没有定义某些东西,是吗?
  • 为什么我需要第二个参数key?正如我测试的那样,我可以把它留空,并且应该调用现有的JS函数。

1 个答案:

答案 0 :(得分:1)

  • 为什么没有任何方法,其名称如下:Page.ClientScript.CallJSScript(“someJSFunc”);

可能是因为这是更通用的解决方案,因为只需添加2个字符即可获得相同的结果,如果需要,可以添加参数和其他任何内容。

  • 为什么upper-method需要反射方法GetType()?在运行时没有定义某些东西,是吗?
  • 为什么我需要第二个参数键?正如我测试的那样,我可以把它留空,并且应该调用现有的JS函数。

对于这两个原因相同 - 该方法将检测您是否多次运行相同的脚本,在这种情况下,只调用一次。这两个参数是它如何识别重复的方法 - 一个键是不够的,因为不同库中的另一个类可能使用相同的键 - 所以你需要传入你自己的类的类型以确保脚本在执行时执行你想要它。

相关问题