title: Jquery-ui Autocomplete select Call back function is not working properly
body: <p>I am using jquery-ui autocomplete and making a  ajax call inside the autocomplete function i am calling my controller action which returns Json , every thing is working fine but when i select some thing from suggestion dropdown then <code>select</code> call back function called and in <code>select</code> callback function <code>ui</code> is undefined . </p>
  
  <p><strong>Javascript</strong>  </p>
  
  <pre><code> function log(message) {
              $("&lt;div&gt;").text(message).prependTo("#log");
              $("#log").scrollTop(0);
          }
  
          $("#search").autocomplete({
              source: function (request, response) {
                  $.ajax({
                      url: "/Home/GetCompanyNames",
                      dataType: "jsonp",
                      data: "searchterm=" + request.term,
                      success: function (data) {
                          response($.map(data, function (item) {
                              alert(item.Value);
                              return {
                                  label: item.Name,
                                  value: item.Name
                              };
                          }));
                      }
                  });
              },
              minLength: 2,
              select: function (event, ui) {
                  alert(ui.item.Name);
              alert(ui.item.Value);
              alert(ui.item.LogoUrl);
              },
              open: function () {
                  $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
              },
              close: function () {
                  $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
              }
          });
  
      });
  </code></pre>
  
  <p><strong>Action in Controller :</strong></p>
  
  <pre><code>    public JsonResult GetCompanyNames (string searchterm)
      {
          var companies = context.companyService.Query().Where(x =&gt; x.Name.Contains(searchterm)).ToList();
          var list = companies.Select(item =&gt; new SearchJsonModel
                                                  {
                                                      LogoUrl = item.Logo != null || item.Logo != "" ? "&lt;img  src='/Upload/" + item.Logo + "' /&gt;" : "&lt;img src='/home/image?image=" + item.Name + "' /&gt;", Name = item.Name, Value = item.InternetName
                                                  }).Select(model =&gt; (model)).ToList();
          return Json(list, JsonRequestBehavior.AllowGet);
      }
  </code></pre>
  
  <p><strong>SearchJsonModel :</strong></p>
  
  <pre><code> public class SearchJsonModel
  {
      public string Name { get; set; }
      public string Value { get; set; }
      public string LogoUrl { get; set; }
  }
  </code></pre>
  
  <p>Please ask me if you need more detail and thanks in advance . </p>