本人用了Dropdownlist,选择为12个月份,1--12,autopostback=true;
selectchange事件中进行了一个判断

if(flag)

   response.write(<script>alert('alert');window.open('aspx','_self')</scirtp>)


发现如果flag为真的话正常,跳转至设置的页面
但是如果flag为假,就出现错误,无论你选择哪个月份,poskback以后都是自动选择为1月,1月上面还有一个值:请选择,
Dropdownlist的值为:请选择,1,2,3,4,12
请教解决。多谢。

解决方案 »

  1.   

    这是为什么呢,以前没有出现过这样的情况,是不是加了window.open就这样了,但是也没有执行那边的代码啊!
      

  2.   

    第一次绑定的代码放在if(!IsPostBack)里面
      

  3.   

    没有处理false,false就正常执行选择就可以了。
      

  4.   

    你设置这个属性 autopostback=true  它会回传  重新加载  Page_Load事件  所以你要在Page_Load事件加  if(!IsPostBack) 
      

  5.   

    好的,我试试看,不是在selectchange里面吗?
      

  6.   

    在if(!IsPostBack) 
    里面写什么呢,感觉没有什么可以写
    我要实现的功能是 当Dropdownlist的选择值改变了的时候,进行判断,如果是true则跳到另外一个页面
    如果为false则,不做反映,
    但是如果为false的时候,他就选择不到你想选的那个值,比如你选择10月份,你选择后,他就自动挑到了1月份上面,根本不能选择到10月份上面。
      

  7.   

    Dropdownlist不需要绑定数据库,直接是静态的
    因为是月份
      

  8.   

    貌似是dropdownlist的listitem 的value相同造成的
      

  9.   

    我也遇到过这样的问题!你把月份的Value 给一个自动增长的数字~
      

  10.   

    if(DropDownList1.Items.FindByText("").selected=true)
    {
       判断.............}