public string GetDefaultID(string defaultTxt)
        {
            foreach (ListItem item in DdQKindId.Items)
            {
                if (item.Value.CompareTo(defaultTxt) == 0)
                {
                    return item.Text;
                }
             }            return "";      
        }前台  <%#GetDefaultID(Eval("KIND_ID").ToString())%> 
这个能把 数据库里读取出来的数据 与下拉列表进行对比,对比后  对上的,就显示出相应的text值我现在想把 没对上的TEXT值 也显示出来
加个             else  
                {
                    return item.Text;
                }根本没效果大家帮忙下 小弟菜  急啊!!!!!

解决方案 »

  1.   

    讲不清楚,
    第一种理解:
    这需要在前台用js判断。
    让你的GetDefaultID()返回这样的数据"text|0"
    然后在前台判断。第二种理解:
    你是想在后台返回,
    public string GetDefaultID(string defaultTxt) 
            { 
                String result;
                foreach (ListItem item in DdQKindId.Items) 
                { 
                    if (item.Value.CompareTo(defaultTxt) == 0) 
                    { 
                        result = item.Text; 
                    } else{
                        result="你要返回的";
                    }
                }             return reslut;      
            } 
      

  2.   

    回一楼的   是第二种理解  问题是  这个 else 怎么来返回 比对不上的呢?比如说 我下拉列表里有   select text = "新闻" value = "01"
                         select text = "体育" value = "02"
                         select text = "财金" value = "03"
                         select text = "娱乐" value = "04"现在我从数据库里读取出来 只有 value值  01,02  比对上了 我就能显示  新闻  体育。
    但是我 else 怎么写 才能把 没比对上的 财金 娱乐 也显示出来呢
     大家帮帮忙吧  急死了!!!!!!!!!!!
      

  3.   

       else  
                    { 
                        return item.Text; 
                    } 我知道 这个  else 里面错误在哪了,  当他 取出 比对不上的  与下拉列表进行比对,第一个 不符合的就返回 第一个的TEXT, 然后再对比 还是与第一个进行对比 还是返回第一个的 TEXT。 所以导致 全显示的 第一个