Sha256: aea4d92ba48f1510b28ba1d93fe3f9f75faff3f3e727ab07b7deb147e2716065

Contents?: true

Size: 1.91 KB

Versions: 125

Compression:

Stored size: 1.91 KB

Contents

// Make the autocomplete the same width as the input it is related to.
jQuery.ui.autocomplete.prototype._resizeMenu = function () {
 var ul = this.menu.element;
  ul.outerWidth(this.element.outerWidth());
};

$(document).on('ready ajaxSuccess', function() {

  $.ui.autocomplete.prototype._renderItem = function (ul, item) {
    var t = String(item.value).replace(
      new RegExp(this.term, "gi"),
      "<span class='ui-state-highlight'>$&</span>"
    );
    return $("<li></li>")
      .data("item.autocomplete", item)
      .append("<a>" + t + "</a>")
      .appendTo(ul);
  };


  $("[data-autocomplete-source]").each(function() {
    var url = $(this).data("autocomplete-source");
    var parentForm = $(this).closest("form");
    var target = parentForm.find($(this).data("autocomplete-rel"));
    $(this).autocomplete({
      appendTo: $(parentForm), // appending to the form resolves issues with autocomplete hidden in modals
      minLength: 2,
      autoFocus: true,
      open: function() { $('#div .ui-menu').width(300) },
      source: function(request,response) {
        $.ajax({
          url: url,
          data: { term: request.term },
          success: function(data) {
            var list = $.map(data, function(patient) {
              return {
                label: patient.label,
                id: patient.id
              };
            });
            response(list);
          },
          error: function(jqXHR, textStatus, errorThrown) {
            var msg = "An error occurred.  Please contact an administrator.";
            response({ label: msg, id: 0});
          }
        });
      },
      search: function(event, ui) {
        $(target).val("");
      },
      select: function(event, ui) {
        $(target).val(ui.item.id);
      }
    });
  });

  $(document).on("click", "[data-clear-value-on-click]", function() {
    var target = $(this).data("clear-value-on-click");
    $(target).val("");
  })

});

Version data entries

125 entries across 125 versions & 1 rubygems

Version Path
renalware-core-2.0.27 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.26 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.25 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.24 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.23 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.22 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.21 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.20 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.18 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.17 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.16 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.15 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.14 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.13 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.12 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.11 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.9 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.8 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.7 app/assets/javascripts/renalware/auto_complete.js
renalware-core-2.0.5 app/assets/javascripts/renalware/auto_complete.js