解决AjaxControlToolkit中ComboBox不能验证的问题

原创 2009年09月29日 14:33:00

原因从官网上得知,ComboBox是TextBox与其它控件的一个组合控件,因此如果直接绑定验证的话,验证控件将不会直接指向TextBox,因此只能使用CustomValidator 控件,但是在CustomValidator 控件的JS中,需要通过使用$find函数找到ComboBox当前的对象,然后再使用对像的_textBoxControl属性找到TextBox,代码如下所示

C# Code:

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                var data = new[] { new { Id = 0, Name = "Jim.Yu" }, new { Id = 1, Name = "Simon.Fan" }, new { Id = 2, Name = "Allen.Zhao" } };
                this.ComboBox1.DataTextField = "Name";
                this.ComboBox1.DataValueField = "Id";
                ComboBox1.DataSource = data;
                ComboBox1.DataBind();
            }
        }

 

ASPX:

<asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <cc1:ComboBox ID="ComboBox1" runat="server">
        </cc1:ComboBox>
        <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="ComboBox1"
            ValidateEmptyText="true" ClientValidationFunction="CustomValidator" Display="Dynamic"
            ErrorMessage="Custom Validator"></asp:CustomValidator>
        <br />
        <br />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
            ControlToValidate="TextBox1" Display="Dynamic"
            ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        <asp:Button ID="Button1" runat="server" Text="Button" />
                <script language="javascript">
                    function CustomValidator(s, e) {
                        if ($find(s.controltovalidate)._textBoxControl.value == "") {
                            e.IsValid = false;
                        }
                    }
        </script>

AjaxControlToolkit ComboBox支持中文检索dll

这几天用到了AjaxControlToolkit ComboBox,但是不支持中文检索,不过公布了源码了,所以可以修改源码。经过修改现在可以支持中文检索了。 下载地址:下载地址...
  • soief
  • soief
  • 2010-04-21 17:35:00
  • 2338

文本框(Textbox)和下拉框(Combobox)自动联想功能的实现

怎样使自己程序中的文本框或下拉框具有像百度和Google那样的自动联想功能?微软的TextBox和Combobox控件为我们提供了简便方法。 首先需要学习TextBox(或Combobox)的两个属性...
  • huanglin529
  • huanglin529
  • 2016-11-25 11:18:51
  • 2484

解决AjaxControlToolkit中ComboBox不能验证的问题

原因从官网上得知,ComboBox是TextBox与其它控件的一个组合控件,因此如果直接绑定验证的话,验证控件将不会直接指向TextBox,因此只能使用CustomValidator 控件,但是在Cu...
  • ywuwgij
  • ywuwgij
  • 2009-09-29 14:33:00
  • 1328

配置AjaxControlToolkit

配置AjaxControlToolkit 首先是下载AjaxControlToolkit的dll以及at...
  • Micheal_NET
  • Micheal_NET
  • 2008-04-24 20:29:00
  • 777

Ext->editgrid+combobox

  • 2011年07月11日 13:48
  • 7KB
  • 下载

AJAXControlToolKit的ReorderList控件

 使用ReorderList和LINQ实现的实时保存记录的页面: 1.       Introduction:ASP.NET AJAX的ReorderList控件是可以实现无排序数据绑定的列表控件,从...
  • dujingjing1230
  • dujingjing1230
  • 2009-07-02 18:01:00
  • 1793

AJAXControlToolKit的Resizable控件的介绍

1.       introduction:   ResizableControl 是一个可以使最终用户在界面上改变任意一个元素的大小的控件,最终用户可以通过拖动需要改变大小的元素的右下角来完成其大小...
  • dujingjing1230
  • dujingjing1230
  • 2009-06-30 15:52:00
  • 717

ComboBox验证例子

简单的验证实例,测试博客使用。
  • sotower
  • sotower
  • 2013-11-13 18:23:19
  • 1279

关于easyui-combobox在表单提交的时候如何做非空校验(笔记)

关于表单提交的时候非空校验问题
  • QCIWYY
  • QCIWYY
  • 2016-04-27 16:12:53
  • 6339

关于asp.net中ajax的问题:AjaxControlToolkit 未定义的解决方法

重装了一下系统,VS2005和ajax都装好了,发现原来可以运行的网站只要用ajax控件的页面都出现脚本错误,搞了好半天,也没好.最后我发现系统日期是2006年的,就改过来了,奇怪了,再次运行就好了....
  • dmfoyq
  • dmfoyq
  • 2007-07-22 17:01:00
  • 1919
收藏助手
不良信息举报
您举报文章:解决AjaxControlToolkit中ComboBox不能验证的问题
举报原因:
原因补充:

(最多只允许输入30个字)