Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
Jquery Asp文件上载控件(如果有文件)_Jquery_Asp.net_Webforms - Fatal编程技术网

Jquery Asp文件上载控件(如果有文件)

Jquery Asp文件上载控件(如果有文件),jquery,asp.net,webforms,Jquery,Asp.net,Webforms,我上传的文件如下: <asp:FileUpload id="FileUploadControl" onchange="activateButton()" runat="server" /> <asp:Button runat="server" id="UploadButton" class="btn btn-default disabled" text="Upload" onclick="UploadButton_Click" /> 以及背后的代码: protec

我上传的文件如下:

<asp:FileUpload id="FileUploadControl" onchange="activateButton()" runat="server" />
<asp:Button runat="server" id="UploadButton" class="btn btn-default disabled" text="Upload" onclick="UploadButton_Click" />



以及背后的代码:

protectedvoiduploadbutton\u单击(对象发送方,事件参数e)
{
if(FileUploadControl.HasFile)
{
尝试
{
字符串filename=Path.GetFileName(FileUploadControl.filename);
FileUploadControl.SaveAs(Server.MapPath(“~/”)+文件名);
StatusLabel.Text=“上载状态:文件已上载!”;
}
捕获(例外情况除外)
{
StatusLabel.Text=“上载状态:无法上载文件。出现以下错误:“+ex.Message;
}
}
}

我想检查一下fileupload是否有文件和活动我的按钮UploadButton…准确地将CSS类更改为btn btn default active。我现在不知道是否可能???

您应该使用
RequiredFieldValidator
检查文件是否被选中,如果没有,则即使单击按钮也不要让页面发回

<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:RequiredFieldValidator ID="rfvFileupload" runat="server"
                                                ControlToValidate="FileUpload1"/>


在使用文件上载控件选择文件之前,您将无法发回。

您应该使用
RequiredFieldValidator
检查是否选择了文件,如果没有,则即使单击按钮也不要让页面发回

<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:RequiredFieldValidator ID="rfvFileupload" runat="server"
                                                ControlToValidate="FileUpload1"/>


在使用文件上载控件选择文件之前,您将无法发回。

我认为最好使用jquery。尝试以下方法:

$("#fileinput").change(function() {  
    $("#yourbutton").removeClass("disabled").addClass("active");
});

这是一个样本。您应该对id进行适当的替换。

我认为使用jquery应该做得更好。尝试以下方法:

$("#fileinput").change(function() {  
    $("#yourbutton").removeClass("disabled").addClass("active");
});

这是一个样本。您应该对id进行适当的替换。

您可以在更改事件客户端添加FileUpload,然后使用javascript更新其类,如下所示:

<asp:FileUpload id="FileUploadControl" onchange="activateButton()" runat="server" />
<asp:Button runat="server" id="UploadButton" class="btn btn-default disabled" text="Upload" onclick="UploadButton_Click" />

在javascript中:

<script>
    function activateButton() {
        document.getElementById("<%=UploadButton.ClientID%>").className = "btn btn-default active";
    }
</script>

函数激活按钮(){
document.getElementById(“”.className=“btn btn default active”;
}

这是纯javascript,如果您已经在使用jquery,那么可以使用它实现同样的效果(详细信息请参见@avi answer)。

您可以在更改事件客户端添加FileUpload,然后使用javascript更新其类,如下所示:

<asp:FileUpload id="FileUploadControl" onchange="activateButton()" runat="server" />
<asp:Button runat="server" id="UploadButton" class="btn btn-default disabled" text="Upload" onclick="UploadButton_Click" />

在javascript中:

<script>
    function activateButton() {
        document.getElementById("<%=UploadButton.ClientID%>").className = "btn btn-default active";
    }
</script>

函数激活按钮(){
document.getElementById(“”.className=“btn btn default active”;
}
这是纯javascript,如果您已经在使用jquery,那么可以使用它实现同样的效果(详细信息请参见@avi answer)。

$(.FileUploadControl”).on('change',function(){
if(document.getElementById(“”).files.length==0)
{
//文件上载没有文件
}
否则{
//文件上载有文件
$(“.FileUploadControl”).addClass(“btn btn默认活动”);
}
});
$(.FileUploadControl”).on('change',function(){
if(document.getElementById(“”).files.length==0)
{
//文件上载没有文件
}
否则{
//文件上载有文件
$(“.FileUploadControl”).addClass(“btn btn默认活动”);
}
});您只需执行以下操作:
$(“#yourbutton”).removeClass('disabled').addClass(“active”)您只需执行以下操作:
$(“#yourbutton”).removeClass('disabled').addClass(“active”)