我在我的asp.net应用程序中使用ajaxToolkit:AsyncFileUpload。在AsyncFileUpload1_UploadedComplete服务器端事件中,我试图使标签可见并更改文本,但未启用按钮。
我正在使用asyncfileupload控件的客户端事件,如下所示:
function UploadComplete(sender, args) {
var filename = args.get_fileName();
var contentType = args.get_contentType();
var text = "Size of " + filename + " is " + args.get_length() + " bytes";
if (contentType.length > 0) {
text += " and content type is '" + contentType + "'.";
}
document.getElementById('<%= lblStatus.ClientID %>').innerText = text;
}
所有标签,按钮和文件上传控件都在updatepanel之外。我尝试将控件放在updatepanel中,但结果相同。
请求解决方案
答案 0 :(得分:2)
是Asyncfileupload。它以异步方式工作。所以你发送文件到codebehind。它会让你结果。没有视图状态,没有回发,没有HTML渲染。
因此您无法更改标签或按钮。如果需要,请使用正常的fileupload。或者在客户端做你的工作..
答案 1 :(得分:0)
我有一个类似的问题..你不能设置可见的真或假,但你可以设置它的风格..这是我做的..
function OnClientAsyncFileUploadComplete(sender, args) {
//similar to visible = false;
document.getElementById('<%=lbl_Lable1.ClientID%>').style.display = 'none';
//similar to visible = true;
document.getElementById('<%=lbl_Lable2.ClientID%>').style.display = 'inline';
return true;
}
对不起,我在标签中设置文本方面没什么帮助,因为我在标签中预先定义了文本,但是你总是可以将你的innertext或innerhtml代码与它合并..