Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6952775
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T14:23:32+00:00 2026-05-27T14:23:32+00:00

I have converted a few DropDownLists to jQuery comboboxes to add auto complete functionality

  • 0

I have converted a few DropDownLists to jQuery comboboxes to add auto complete functionality etc. however, there are various methods in the codebehind file to disable the drop down lists.

This does not disable the jQuery combobox so the value can still be changed.

Is there a way to bind the combobox to the dropdown list enable / disabled event? so they can update automatically based on the source drop down list?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T14:23:33+00:00Added an answer on May 27, 2026 at 2:23 pm

    Ok, I think I have come up with a solution by editing the js file for creating the combo box – you may recognise most of the script to turn in to a combo box. I have highlighted the added lines with ** ** at the beginning and end (I was trying to make it bold)

    (function ($) {
        $.widget("ui.combobox", {
            _create: function () {
                var self = this,
                         select = this.element.hide(),
                         selected = select.children(":selected"),
                         value = selected.val() ? selected.text() : "";
                **var disabled = select.is(':disabled');**
                var dropDownListID = this.element.context.id;
                var input = this.input = $("<input>")
                         .insertAfter(select)
                         .val(value)
                         .autocomplete({
                             delay: 0,
                             minLength: 0,
                             source: function (request, response) {
                                 var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
                                 response(select.children("option").map(function () {
                                     var text = $(this).text();
                                     if (this.value && (!request.term || matcher.test(text)))
                                         return {
                                             label: text.replace(
                                                 new RegExp(
                                                     "(?![^&;]+;)(?!<[^<>]*)(" +
                                                     $.ui.autocomplete.escapeRegex(request.term) +
                                                     ")(?![^<>]*>)(?![^&;]+;)", "gi"
                                                 ), "<strong>$1</strong>"),
                                             value: text,
                                             option: this
                                         };
                                 }));
                             },
                             select: function (event, ui) {
                                 ui.item.option.selected = true;
                                 self._trigger("selected", event, {
                                     item: ui.item.option
                                 }
                                 );
                                 __doPostBack(dropDownListID, '');
                             },
                             change: function (event, ui) {
                                 if (!ui.item) {
                                     var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex($(this).val()) + "$", "i"),
                                         valid = false;
                                     select.children("option").each(function () {
                                         if ($(this).text().match(matcher)) {
                                             this.selected = valid = true;
                                             return false;
                                         }
                                     });
                                     if (!valid) {
                                         // remove invalid value, as it didn't match anything
                                         $(this).val("");
                                         select.val("");
                                         input.data("autocomplete").term = "";
                                         return false;
                                     }
                                 }
                             }
                         })
                         .addClass("ui-widget ui-widget-content ui-corner-left")
                         **.attr('disabled', disabled)**
                         .click(function () { $(this).select(); });
    
                input.data("autocomplete")._renderItem = function (ul, item) {
                    return $("<li></li>")
                             .data("item.autocomplete", item)
                             .append("<a>" + item.label + "</a>")
                             .appendTo(ul);
                };
    
                this.button = $("<button type='button' style='width:25px; height:25px;' >&nbsp;</button>")
                         .attr("tabIndex", -1)
                         .attr("title", "Show All Items")
                         **.attr('disabled', disabled)**
                         .insertAfter(input)
                         .button({
                             icons: {
                                 primary: "ui-icon-triangle-1-s"
                             },
                             text: false
                         })
                         .removeClass("ui-corner-all")
                         .addClass("ui-corner-right ui-button-icon")
                         .click(function () {
                             // close if already visible
                             if (input.autocomplete("widget").is(":visible")) {
                                 input.autocomplete("close");
                                 return;
                             }
    
                             // work around a bug (likely same cause as #5265)
                             $(this).blur();
    
                             // pass empty string as value to search for, displaying all results
                             input.autocomplete("search", "");
                             input.focus();
                         });
            },
    
            destroy: function () {
                this.input.remove();
                this.button.remove();
                this.element.show();
                $.Widget.prototype.destroy.call(this);
            }
        });
    })(jQuery);
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a class with a few methods and I would like to see
I have an Ant build that is currently being converted to Maven. However, the
Recently I have started using Lucene. However, after few days I've spotted that queries
I need to convert several Java classes to C#, but I have faced few
I have converted an array to object data like this: <?php $myobject->data = (object)Array('zero','one','two');
I have converted an Entity framework project to use POCO objects by removing the
I have converted my Datatable to json string use the following method... public string
Using explode i have converted the string into array , But the array look
I have a 3rd party JAR that I have converted to an OSGI bundle
I am working with a set of data that I have converted to a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.