Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net C#页面中的外部javascript文件_C#_Javascript_Asp.net - Fatal编程技术网

asp.net C#页面中的外部javascript文件

asp.net C#页面中的外部javascript文件,c#,javascript,asp.net,C#,Javascript,Asp.net,我在外部javascript文件中编写了一些javascript函数。 我已经将该文件包含在我的asp.net页面标题部分中。 但是,我无法理解如何从代码隐藏文件调用函数。 e、 我想在文本框的onkeypress事件上调用某个函数“tacount”。我如何才能做到这一点?您不能从代码中调用函数 您可以使用javascript从服务器端代码调用这些函数,但这可能会变得非常混乱 不要将javascript函数附加到服务器端事件,而是在客户端附加 使用jQuery之类的库将事件附加到客户端的文本框中

我在外部javascript文件中编写了一些javascript函数。 我已经将该文件包含在我的asp.net页面标题部分中。 但是,我无法理解如何从代码隐藏文件调用函数。 e、 我想在文本框的onkeypress事件上调用某个函数“tacount”。我如何才能做到这一点?

您不能从代码中调用函数

您可以使用javascript从服务器端代码调用这些函数,但这可能会变得非常混乱

不要将javascript函数附加到服务器端事件,而是在客户端附加

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

查看所有可以从代码隐藏中进行的javascript调用,但基本上所有需要在代码隐藏调用中执行的操作如下:

ScriptManager.RegisterStartupScript(this,this.getType(),"tacount",'tacount();',true);
这将在客户端完成回发后触发,但是建议只从客户端调用javascript

编辑

您的文件位于外部javascript文件中这一事实并不重要,因为浏览器将调用与内联javascript相同的文件

您所要做的就是像往常一样在设计器代码中调用函数,即

<asp:TextBox runat="server" onkeypress='return tacount();'/>

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

ScriptManager.RegisterStartupScript(this,this.getType(),"fnMyFunctionNameFromServiceSide_tacount",'tacount();',true);
但是,您应该注意,
fnMyFunctionNameFromServiceSide\u tacount
不应出现在标记代码或任何包含的javascript文件中

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

<asp:TextBox id="myTextBox" runat="server" onkeypress="javascript: return tacount();"/>
查找未找到javascript函数的确切原因。可能是函数本身不存在,或者函数本身中存在一些javascript错误


希望这能有所帮助。

但首先确保此脚本未在页面上注册。我只想从客户端调用javascript。为此需要做些什么???我已经更新了我的答案;如果需要更多帮助,请使用textbox名称和要调用的函数粘贴设计器代码onkeypress事件不会显示为textbox事件。这正是问题所在。intellisense不会显示它,因为它在visual studio中不受支持,但它会工作,因为它将作为属性插入html中的输入框中