更改标签后,上传脚本不会触发,因此我定期asp:FileUpload
只允许我进行一次文件交互
有任何修复建议吗?
这是脚本;
<script type = "text/javascript">
$(window).load(function () {
$("#<%=FileUpload1.ClientID %>").fileUpload({
'uploader': 'scripts/uploader.swf',
'cancelImg': 'images/cancel.png',
'buttonText': 'Browse Files',
'script': 'Upload.ashx',
'folder': 'uploads',
'fileDesc': 'Image Files',
'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
'multi': true,
'auto': true
});
});
</script>
这是标签定义,
<asp:TabContainer ID="tabMyHome" runat="server"
ActiveTabIndex="0"
CssClass="MyTabStyle"
AutoPostBack="True">
<asp:TabPanel ID="tabRecent" runat="server"
HeaderText="Recent Activity"
Width="100%">
</asp:TabPanel>
</asp:TabContainer>
答案 0 :(得分:0)
我想说当你更改标签时,你会添加一个新的文件上载量,该文件上载量与页面加载时不同,并且不会附加filupload事件。
您可能需要在tabcontainers客户端.fileUpload
活动中重新应用OnClientActiveTabChanged
答案 1 :(得分:0)
使用以下代码修复它
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<script type="text/javascript">
Sys.Application.add_init(function () {
$("#<%=FileUpload1.ClientID %>").fileUpload({
'uploader': 'scripts/uploader.swf',
'cancelImg': 'images/cancel.png',
'buttonText': 'Browse Files',
'script': 'Upload.ashx',
'folder': 'uploads',
'fileDesc': 'Image Files',
'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
'multi': true,
'auto': true
});
});
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args) {
$("#<%=FileUpload1.ClientID %>").fileUpload({
'uploader': 'scripts/uploader.swf',
'cancelImg': 'images/cancel.png',
'buttonText': 'Browse Files',
'script': 'Upload.ashx',
'folder': 'uploads',
'fileDesc': 'Image Files',
'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
'multi': true,
'auto': true
});
}
</script>