来自asp.net C#page的外部javascript文件

我有一些用外部javascript文件编写的javascript函数。 我已将该文件包含在我的asp.net页面部分中。 但我无法理解如何从代码隐藏文件中调用函数。 例如,我想在文本框的onkeypress事件上调用某个函数’tacount’。 我怎么可能这样做?

您无法从服务器端代码调用客户端function。

可以从服务器端代码发出javascript来调用这些函数,但这可能会非常混乱。

不要将javascript函数附加到服务器端事件,而是在客户端执行此操作。

使用jQuery等库将事件附加到客户端的文本框中。

看看你可以通过代码隐藏的所有javascript调用,但基本上你需要在代码后面调用以下内容:

ScriptManager.RegisterStartupScript(this,this.getType(),"tacount",'tacount();',true); 

这将在客户端完成回发后触发,但建议仅从客户端调用javascript。

编辑

您的文件位于外部javascript文件中这一事实并不重要,因为浏览器会将其称为内联javascript。

您所要做的就是在设计师代码中照常调用函数,即

  

如果要从Code Behind文件中调用JavaScript函数,则应使用@ TBohnen.jnr建议的代码,即:

 ScriptManager.RegisterStartupScript(this,this.getType(),"fnMyFunctionNameFromServiceSide_tacount",'tacount();',true); 

但是,您应该注意,标记代码或任何包含的javascript文件中不应出现fnMyFunctionNameFromServiceSide_tacount

如果要从外部包含的javascript文件调用javascript函数,请使用以下代码:

  

但是,如果上述内容对您不起作用,则表示无法找到该function。 在这种情况下,我建议你使用FireBug找到找不到javascript函数的确切原因。 可能是函数本身不存在或函数本身内部存在一些javascript错误。

希望这可以帮助。