C# 文本控件未更新
我正在使用一个名为uploadify的插件向用户显示文件上传进度。uploadify脚本调用default.aspx(异步)。在default.aspx的Page_Load方法中,我对传递给它的其他表单数据运行验证检查 如果验证检查失败,我喜欢使用文本控件显示错误消息,然后退出。问题是文本控件未使用验证错误消息进行更新 已更新C# 文本控件未更新,c#,asp.net,file-upload,upload,uploadify,C#,Asp.net,File Upload,Upload,Uploadify,我正在使用一个名为uploadify的插件向用户显示文件上传进度。uploadify脚本调用default.aspx(异步)。在default.aspx的Page_Load方法中,我对传递给它的其他表单数据运行验证检查 如果验证检查失败,我喜欢使用文本控件显示错误消息,然后退出。问题是文本控件未使用验证错误消息进行更新 已更新 public partial class _Default : System.Web.UI.Page { protected void Page_Load(obj
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
HttpContext context = HttpContext.Current;
if (context.Request.Files["Filedata"] != null)
{
if (context.Request["Name"] == null)
{
litValidationErrors.InnerHtml = "Please enter a name";
return;
}
}
}
}
<script type="text/javascript">
$(document).ready(function ()
{
$('#file_upload').uploadify({
'uploader': '/Plugins/Uploadify/uploadify.swf',
'script': '/default.aspx',
'cancelImg': '/Plugins/Uploadify/images/cancel.png',
'folder': '/FileUploads',
'auto': false,
'onComplete': function (event, ID, fileObj, response, data)
{
var uploadifyResponse = $("#<%= litValidationErrors.ClientID %>", $(response));
if (uploadifyResponse.length > 0)
{
$("#<%= litValidationErrors.ClientID %>").css("display", "inline").text(uploadifyResponse.text());
}
}
});
$('#MainContent_superSubmit').click(function ()
{
var jsonFormData = {
'Name': $('#MainContent_txtName').val(),
'Password': $('#MainContent_txtPassword').val()
};
$('#file_upload').uploadifySettings('scriptData', jsonFormData);
$('#file_upload').uploadifyUpload();
});
});
</script>
<html>
.....
<asp:Button ID="superSubmit" runat="server" Text="Button" />
<span id="litValidationErrors" runat="server" style="display: none; color: #ff0000;"></span>
</html>
public分部类\u默认值:System.Web.UI.Page
{
受保护的无效页面加载(对象发送方、事件参数e)
{
HttpContext=HttpContext.Current;
if(context.Request.Files[“Filedata”!=null)
{
if(context.Request[“Name”]==null)
{
litValidationErrors.InnerHtml=“请输入名称”;
返回;
}
}
}
}
$(文档).ready(函数()
{
$('#文件上传')。上传({
“uploader”:“/Plugins/Uploadify/Uploadify.swf”,
'script':'/default.aspx',
“cancelImg”:“/Plugins/Uploadify/images/cancel.png”,
'文件夹':'/FileUploads',
“自动”:false,
“onComplete”:函数(事件、ID、fileObj、响应、数据)
{
var uploadifyResponse=$(“#”,$(response));
如果(uploadifyResponse.length>0)
{
$(“#”).css(“显示”、“内联”).text(uploadifyResponse.text());
}
}
});
$('#MainContent_superSubmit')。单击(函数()
{
var jsonFormData={
'Name':$('MainContent_txtName').val(),
'密码':$('MainContent\txtPassword').val()
};
$('#file_upload').uploadifySettings('scriptData',jsonFormData);
$('#file_upload').uploadifyUpload();
});
});
.....
向脚本中添加回调函数,该函数将更新文本控件的文本使用runat=“server”将litValidationErrors控件从文本更改为span,删除Visible=“false”,并通过设置style=“display:none;”将其隐藏。另外,将onComplete事件处理程序添加到uploadify:
$(function () {
$('#file_upload').uploadify({
'uploader': '/Plugins/Uploadify/uploadify.swf',
'script': '/WebForm1.aspx',
'expressInstall': '/Plugins/UploadifyexpressInstall.swf',
'cancelImg': '/Plugins/Uploadify/images/cancel.png',
'folder': '/App_Data/FileUploads',
'auto': false,
'onComplete': function (event, ID, fileObj, response, data) {
var uploadifyResponse = $("#<%= litValidationErrors.ClientID %>", $(response));
if (uploadifyResponse.length > 0) {
$("#<%= litValidationErrors.ClientID %>").css("display", "inline").text(uploadifyResponse.text());
}
}
});
});
$(函数(){
$('#文件上传')。上传({
“uploader”:“/Plugins/Uploadify/Uploadify.swf”,
'script':'/WebForm1.aspx',
“expressInstall”:“/Plugins/UploadifyexpressInstall.swf”,
“cancelImg”:“/Plugins/Uploadify/images/cancel.png”,
'文件夹':'/App_Data/FileUploads',
“自动”:false,
“onComplete”:函数(事件、ID、fileObj、响应、数据){
var uploadifyResponse=$(“#”,$(response));
如果(uploadifyResponse.length>0){
$(“#”).css(“显示”、“内联”).text(uploadifyResponse.text());
}
}
});
});
只有当Request.Files[“Filedata”]
具有值且Request.[“Name”]
为空时,才会显示验证。这就是你想要的逻辑吗?我就是这么想的。代码输入并设置文字,但确实如此。t stickI在google上搜索uploadify
插件,但我无法获得任何关于它的文档。试试@1stein的答案。我做了一些修改,但仍然不起作用。在Firefox中,没有显示任何内容。在IE中,它不时会闪现一条错误消息,但不会持续。我已经在我的原始帖子中用你的所有更改更新了我的代码