日期:2014-05-19  浏览次数:20547 次

求js脚本控制FileUpload是否隐藏的方法!
如题,现在有一个DropDownlist,一个FileUpload(服务器控件),DropDownlist是固定显示的,FileUpload要在页面初始化的时候为隐藏状态。当选择DropDownlist其中的某一个选项时,比如选了第三个选项,FileUpload即显示出来,如果选择非第三选项,则FileUpload再次隐藏。

以上的功能要求用javascript实现页面无刷新。要解决的关键问题之一就是由于FileUpload为服务器控件,不知如何用javascript来控制其是否显示;另外,FileUpload要用javascript控制其在页面初始化的时候隐藏起来。小弟水平有限,还请诸位达人指点一二,多谢。

------解决方案--------------------
直接控制FileUpload的 style= "display:none "
------解决方案--------------------
document.getElementbyId( " <%= FileUpload.ClientID%> ").style.display = "none "
------解决方案--------------------
简单写了下:
<%@ Page Language= "C# " AutoEventWireup= "true " CodeFile= "tt.aspx.cs " Inherits= "Test_tt " %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns= "http://www.w3.org/1999/xhtml " >
<head runat= "server ">
<title> 无标题页 </title>
<script language= "javascript ">
function c(e)
{
if(e.options[1].selected)
{
document.getElementById( "File1 ").style.display = " ";
}
else
{
document.getElementById( "File1 ").style.display = "none ";
}
}
</script>
</head>
<body>
<form id= "form1 " runat= "server ">
<div>
<asp:DropDownList ID= "DropDownList1 " runat= "server " onchange= "c(this); ">
<asp:ListItem> a </asp:ListItem>
<asp:ListItem> b </asp:ListItem>
</asp:DropDownList> <br />
<br />
<input id= "File1 " type= "file " style= "display:none; " runat= "server " /> &nbsp; </div>
</form>
</body>
</html>
------解决方案--------------------
顶啥?

别人告诉你了1+1=2,2+2等于几难道还要再告诉你一次?
------解决方案--------------------
if(!Page.IsPostBack)
{
FileUpload.Style.Add( "display ", "none ");
}
------解决方案--------------------
最终解决办法是,在fileupload外面套了个div,然后设置div的style.display=none就可以达到效果了。