来自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错误。
希望这可以帮助。