描述:
存在三个控件:
1、Textbox 用来存放DropDownList 选中的结果
2、Button  用来点击
3、DropDownList 可选择项
我在DropDownList选中后点击按钮,把DropDownList选中的值放入Textbox中,功能已经实现,可是问题出现的是,我如果选择重复项了,就要提示不可以选择重复项,可我的Textbox是累加的,并用“,”隔开的,示例:AA,BBB,CC 这样的,如果我再次在DropDownList中选择了BBB,就不可以在插入到Textbox中了,请大家看看有什么好的解决办法没有。
我已经实现的代码:    var objddl = document.getElementById("DropDownList的ID");
    var objTxt = document.getElementById("Textbox的ID");
    if (objTxt.value=="")//第一次时候不加“,”
    {
    objTxt.value =objddl.options[objddl.selectedIndex].text;
    }
    else
    {
    objTxt.value = objTxt.value + ","+objddl.options[objddl.selectedIndex].text;
    }

解决方案 »

  1.   

    private void btn_Click(object sender, System.EventArgs e)
    {
    if(tb.Text=="")
    {
    tb.Text=ddl.SelectedItem.Value;
    }
    else
    {
    tb.Text=tb.Text+","+ddl.SelectedItem.Value;
    }
    }
      

  2.   

    aspx页面代码
    <%@ Page language="c#" Codebehind="test4.aspx.cs" AutoEventWireup="false" Inherits="lzt7.Inc.test4" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>test4</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </HEAD>
    <body MS_POSITIONING="GridLayout">
    <form id="Form1" method="post" runat="server">
    <FONT face="宋体">
    <asp:DropDownList id="ddl" style="Z-INDEX: 101; LEFT: 408px; POSITION: absolute; TOP: 192px" runat="server">
    <asp:ListItem Value="god" Selected="True">god</asp:ListItem>
    <asp:ListItem Value="ding">ding</asp:ListItem>
    <asp:ListItem Value="yun">yun</asp:ListItem>
    </asp:DropDownList>
    <asp:TextBox id="tb" style="Z-INDEX: 102; LEFT: 352px; POSITION: absolute; TOP: 64px" runat="server"></asp:TextBox>
    <asp:Button id="btn" style="Z-INDEX: 103; LEFT: 584px; POSITION: absolute; TOP: 232px" runat="server"
    Text="Button"></asp:Button></FONT>
    </form>
    </body>
    </HTML>cs代码using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;namespace lzt7.Inc
    {
    /// <summary>
    /// test4 的摘要说明。
    /// </summary>
    public class test4 : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.DropDownList ddl;
    protected System.Web.UI.WebControls.TextBox tb;
    protected System.Web.UI.WebControls.Button btn;

    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    } #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.btn.Click += new System.EventHandler(this.btn_Click);
    this.Load += new System.EventHandler(this.Page_Load); }
    #endregion private void btn_Click(object sender, System.EventArgs e)
    {
    if(tb.Text=="")
    {
    tb.Text=ddl.SelectedItem.Value;
    }
    else
    {
    tb.Text=tb.Text+","+ddl.SelectedItem.Value;
    }
    }
    }
    }
    测试可用
      

  3.   

    你的这段代码是放在哪里的啊?
    var objddl = document.getElementById("DropDownList的ID");
        var objTxt = document.getElementById("Textbox的ID");
        if (objTxt.value=="")//第一次时候不加“,”
        {
        objTxt.value =objddl.options[objddl.selectedIndex].text;
        }
        else
        {
        objTxt.value = objTxt.value + ","+objddl.options[objddl.selectedIndex].text;
        }
      

  4.   

    参考一下
    if (objTxt.value=="")//第一次时候不加“,”
    {
        objTxt.value =objddl.options[objddl.selectedIndex].text;
    }
    else
    {
        if(objTxt.value.IndexOf(objddl.options[objddl.selectedIndex].text) != -1)
        {
           objTxt.value = objTxt.value + ","+objddl.options[objddl.selectedIndex].text;
        }
        else
        {
           Response.Write("不可插入重复项!");
        }
    }
      

  5.   

    啊??不是这个问题撒,我想问一下的是能否当我重复选择了textbox里有的项会做出提示,您等帮我看看不.
      

  6.   

    你的这段代码是放在哪里的啊?
    var objddl = document.getElementById("DropDownList的ID");
        var objTxt = document.getElementById("Textbox的ID");
        if (objTxt.value=="")//第一次时候不加“,”
        {
        objTxt.value =objddl.options[objddl.selectedIndex].text;
        }
        else
        {
        objTxt.value = objTxt.value + ","+objddl.options[objddl.selectedIndex].text;
        }是前台的javascript代码
      

  7.   

    lzt7您理解错了啊,我想问的问题是当我重复的插入了DropDownList时会提示出错,不可以重复选择,我的那段代码是前台的javascript代码,我的那个DropDownList是绑定了数据库中的一列。