使用DropDownList1设AutoPostBack="true",数据丢失 应该空值将type==>ViewState["type"] 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的type是动态变量,这样声明就不会有问题了static string type; if(!IsPostBack) {type="测试"; }改成:type="测试"; 你这样是保存不了变量的值的,用楼上的方法或者用session 是null,在你选了DropDownList1后,type先是等于“其他”,然后就变成"null"了,页面 是有生命周期的,当用户看到页面时,页面已经完成了所有的事件,清除了所有的对象,所以type=null,当你点button时,又开始了第二个往返行程,第二个生命周期,由于第二次没有执行对type赋值的代码,所以type是null 的 当在两个过程或方法间要共享一个变量的值时,而她们又不在同一个往返行程内执行,那么就要使用session或ViewState等。。最好用ViewState 如:<Script runat="server">string type;void Page_Load(object obj,EventArgs e){if(!IsPostBack) { ViewState["type"]="测试"; }}void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e){ViewState["type"]="其它";}void OnClick_Button(object obj,EventArgs e){string test=ViewState["type"];.........}</Script> 楼上讲得不错,是变量的生命周期问题你这三个函数每次对type变量进行赋值时面对的都是一个新的string变量"type"讲到丢失,当这个页面显示出来的时候变量就已经丢失了 asp.net的控件到底有几个有用? 帮我看一下,为什么我上传文件到虚拟服务器会找不到路径啊 是否可以通过ASp.net 打开JSP 页面,并得到返回值 IIS连接不上 在线等 急啊 求serv-u中指定自动删除帐号日期的算法。 菜鸟,关于用户自定义组件(*.ascx)? Rossetti 進來接分 for语句 使用何种技术让WEB程序支持多语言? 能否在datalist项模板中动态的添件控件 PlaceHolder问题?? 数据控件出现问题(小弟在水深火热种,望各位大哥大姐相救)
static string type;
{
type="测试"; }改成:type="测试";
string type;
void Page_Load(object obj,EventArgs e)
{
if(!IsPostBack)
{
ViewState["type"]="测试"; }}
void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{ViewState["type"]="其它";}
void OnClick_Button(object obj,EventArgs e)
{
string test=ViewState["type"];
.........
}
</Script>