Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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
C# 带有验证程序的文件上载的附加onchange事件_C#_Javascript_Asp.net - Fatal编程技术网

C# 带有验证程序的文件上载的附加onchange事件

C# 带有验证程序的文件上载的附加onchange事件,c#,javascript,asp.net,C#,Javascript,Asp.net,编辑2013-11-07:我在这个问题上看到了很多观点。如果这个问题和答案对您没有帮助,请以某种方式让我知道,以便我可以解决它 我的.aspx文件中有一个FileUpload控件。我有一对绑定到它的验证器(一个用于文件大小的CustomValidator,一个用于文件扩展名类型的RegularExpressionValidator)。我想将客户端onchange事件添加到我的FileUpload中,以便在验证器启动后启动,但是当我这样做时 <asp:FileUpload runat="s

编辑2013-11-07:我在这个问题上看到了很多观点。如果这个问题和答案对您没有帮助,请以某种方式让我知道,以便我可以解决它


我的.aspx文件中有一个
FileUpload
控件。我有一对绑定到它的验证器(一个用于文件大小的
CustomValidator
,一个用于文件扩展名类型的
RegularExpressionValidator
)。我想将客户端
onchange
事件添加到我的
FileUpload
中,以便在验证器启动后启动,但是当我这样做时

<asp:FileUpload runat="server" ID="upl1" onchange="disableEnableUploadButton()" />

您必须在客户端而不是服务器端执行此操作。您可以使用
$addHandler
语句将多个事件处理程序附加到元素的事件(您必须将ScriptManager添加到您的ASPX页面才能使其工作)

在你的情况下,如果你这样做

$addHandler($get("upl1"), "change", disableEnableUploadButton);

它将把这个新处理程序链接到已经存在的任何处理程序。如果不想将此代码直接添加到客户端代码,可以通过
ClientScript.RegisterStartupScript

在服务器端生成此代码。您必须在客户端而不是服务器端执行此操作。您可以使用
$addHandler
语句将多个事件处理程序附加到元素的事件(您必须将ScriptManager添加到您的ASPX页面才能使其工作)

在你的情况下,如果你这样做

$addHandler($get("upl1"), "change", disableEnableUploadButton);

它将把这个新处理程序链接到已经存在的任何处理程序。如果不想将此代码直接添加到客户端代码中,可以通过
ClientScript在服务器端生成。RegisterStartupScript

ClientScript.RegisterStartupScript
也必须在回发时调用,或者第一次加载就足够了?如果可能,我仍然建议将其添加到客户端(ASPX/JS)。否则是的,每次加载页面时都必须调用它,包括initial和postback。回发时是否也必须调用
ClientScript.RegisterStartupScript
,或者第一次加载就足够了?如果可能,我仍然建议将其添加到客户端(ASPX/JS)。否则是的,每次加载页面时都必须调用它-包括初始和回发。