<form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
        <select id="s1" name="select1">
<option>XHTML</option>
<option>CSS</option>
<option>JAVASCRIPT</option>
<option>XML</option>
<option>PHP</option>
<option>C#</option>
<option>JAVA</option>
<option>C++</option>
<option>PERL</option>
</select>        br />
        <asp:Button ID="Button1" runat="server" Text="O K" /></div>
    </form>
如何在前台判断那个html:select控件的值不能为空,且在c#后台里取得它的值呢?知道要写js,但不知道昨写?

解决方案 »

  1.   

    var ddlist  = document.getElementById("select1");
    ddlist.options[ddlist .selectedIndex].text; //取得text值
    ddlist.options[ddlist .selectedIndex].value; //取得value值
      

  2.   

     <select id="s1" name="select1" runat="server">
      

  3.   

    select会默认选择一项。后台取值
    Request.From["s1"]
      

  4.   

    用C#的话可以在 <select>标签中加上runat="Server" 属性,如下
    <select   id="s1"   name="select1"   runat="server"> 
    当然用js取也可以
      

  5.   

    C#中获得可以用Request.Form["select1"]就可以判断是否选择:
    你改成这个
    <script language="javascript">
      function up()
      {
        if(document.getElementById("s1").value=="0")
        {
          alert("请选择");
          return false;
        }
      }
    </script>
    <select id="s1" name="select1">
                <option value="0">请选择</option>
                <option value="XHTML">XHTML</option>
                <option value="CSS">CSS</option>
                <option value="JAVASCRIPT">JAVASCRIPT</option>
                <option value="XML">XML</option>
                <option value="PHP">PHP</option>
                <option value="C#">C#</option>
                <option value="JAVA">JAVA</option>
                <option value="C++">C++</option>
                <option value="PERL">PERL</option>
            </select>
    <asp:Button ID="Button1" runat="server" Text="O K"  OnClientClick="return up();"/>
      

  6.   

    aspx前台
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Untitled Page</title>    <script>
            function oselect()
            {
                if(document.all.s1.options[document.all.s1.selectedIndex].value==0)
                {
                    alert("请选取一具体的值!");
                    return false;
                }
                else
                {
                    return true;
                }
            }
        </script></head>
    <body>
        <form id="form1" runat="server">
            <div>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
                <select id="s1" name="select1" runat="server">
                    <option value="0">---请选取---</option>
                    <option value="1">XHTML</option>
                    <option value="2">CSS</option>
                    <option value="3">JAVASCRIPT</option>
                    <option value="4">XML</option>
                    <option value="5">PHP</option>
                    <option value="6">C#</option>
                    <option value="7">JAVA</option>
                    <option value="8">C++</option>
                    <option value="9">PERL</option>
                </select>
                
                <asp:Button ID="Button1" runat="server" Text="---OK---" OnClick="Button1_Click" /></div>
        </form>
    </body>
    </html>
    C#后台
        protected void Page_Load(object sender, EventArgs e)
        {
            this.Button1.Attributes.Add("onclick", "return oselect();");
        }
        //取得选中的值
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (s1.SelectedIndex > 0)
            {
                Response.Write(s1.Items[s1.SelectedIndex].Text);
            }
        }
      

  7.   

    大哥们啊..就是不能写成runat"server"
      

  8.   

    只能runat="server"的话偶早就 用了...
      

  9.   

    不能用服务器控件只有用js
    判断值不为空貌似前面有人说了
    传值可以直接用url传(test.aspx?sel=value) 后台Request.QueryString["sel"] 或者使用其他服务器控件间接取值
      

  10.   

    .............
    你代码就是<option>XHTML</option>这样的?
    检查下。
    没有value的话js判断不了
    加了runat=“server”就和服务器控件一样
    没加就用Request[""]