title: Jquery UI Combo box is not working
body: <p>I am using jquery UI combo box and its not working here is my code its giving the following error, which I see in firefox console.</p>
  
  <p><strong>Error</strong></p>
  
  <p>TypeError: input.data("autocomplete") is undefined
  [Break On This Error]   </p>
  
  <p>input.data("autocomplete")._renderItem = function (ul, item) {</p>
  
  <p><strong>Javascript</strong></p>
  
  <pre><code> (function ($) {
      $.widget("ui.combobox", {
          _create: function () {
              var input,
                  self = this,
                  select = this.element.hide(),
                  selected = select.children(":selected"),
                  value = selected.val() ? selected.text() : "",
                  wrapper = this.wrapper = $("&lt;span&gt;")
                      .addClass("ui-combobox")
                      .insertAfter(select);
  
              input = $("&lt;input&gt;")
                  .appendTo(wrapper)
                  .val(value)
                  .addClass("ui-state-default ui-combobox-input")
                  .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 &amp;&amp; (!request.term || matcher.test(text)))
                                  return {
                                      label: text.replace(
                                          new RegExp(
                                              "(?![^&amp;;]+;)(?!&lt;[^&lt;&gt;]*)(" +
                                              $.ui.autocomplete.escapeRegex(request.term) +
                                              ")(?![^&lt;&gt;]*&gt;)(?![^&amp;;]+;)", "gi"
                                          ), "&lt;strong&gt;$1&lt;/strong&gt;"),
                                      value: text,
                                      option: this
                                  };
                          }));
                      },
                      select: function (event, ui) {
                          ui.item.option.selected = true;
                          self._trigger("selected", event, {
                              item: ui.item.option
                          });
                      },
                      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");
  
              input.data("autocomplete")._renderItem = function (ul, item) {
                  return $("&lt;li&gt;&lt;/li&gt;")
                      .data("item.autocomplete", item)
                      .append("&lt;a&gt;" + item.label + "&lt;/a&gt;")
                      .appendTo(ul);
              };
  
              $("&lt;a&gt;")
                  .attr("tabIndex", -1)
                  .attr("title", "Show All Items")
                  .appendTo(wrapper)
                  .button({
                      icons: {
                          primary: "ui-icon-triangle-1-s"
                      },
                      text: false
                  })
                  .removeClass("ui-corner-all")
                  .addClass("ui-corner-right ui-combobox-toggle")
                  .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.wrapper.remove();
              this.element.show();
              $.Widget.prototype.destroy.call(this);
          }
      });
  })(jQuery);
  
  $(function () {
  
      $("#combobox").combobox();
  
  
  
  });
  </code></pre>
  
  <p><strong>Html</strong></p>
  
  <pre><code>&lt;div class="ui-widget"&gt;
  
  &lt;select id="combobox"&gt;
          @foreach (var item in Model)
          {
              &lt;option value="@item.Name"&gt;@item.Name&lt;/option&gt;
          }
  &lt;/select&gt;
  </code></pre>
  
  <p></p>
  
  <p>i don't know why but its not working  . Please help me </p>