【问题标题】:Input field cache issues with multiple selections on Select2 in FirefoxFirefox 中 Select2 上的多项选择的输入字段缓存问题
【发布时间】:2014-07-21 12:33:31
【问题描述】:

目前尝试在我的 rails 应用程序中实现 Select2,以便用户可以向多个用户发送消息,我为我的应用程序调整了远程数据 example code on the site,如下所示:

  $("#shareCurrentInput").select2({
    placeholder: "Search for a user",
    width: "350px",
    multiple: true,
    minimumInputLength: 3,
    ajax: { 
      url: "search.json",
      dataType: 'json',
      data: function (term, page) {
        return {
            search: term
        };
     },
    results: function (data, page) { 
        return {results: data};
    }
   },

  formatResult: userFormatResult,
  formatSelection: userFormatSelection,  

  escapeMarkup: function (m) { return m; } 
});


 function userFormatResult(user) {
    var markup = "<table class='user-result'><tr>";
    if (user.uid !== undefined ) {
        markup += "<td class='user-image'><img src='http://graph.facebook.com/" + user.uid + "/picture?width=50&height=50'/></td>";
     }
    markup += "<td class='user-info'><div class='user-title'>" + user.name + "</div>";
    markup += "</td></tr></table>";
    return markup;
 }

 function userFormatSelection(user) {
    return user.name;
 }

这在 Safari 中可以正常工作,但在 Firefox 中,我相信由于默认情况下浏览器会缓存会话之间的输入值,因此在刷新页面和尝试选择用户时会导致问题。有没有办法阻止 Firefox 在代码中缓存它(即不要求用户在浏览器设置中关闭缓存)?或者还有其他原因该代码在 Safari 中不起作用?

我尝试过使用this code 来通过jQuery 禁用自动完成功能,但似乎没有CSS 方法可以禁用表单自动完成功能。似乎还有 issues 在 Chrome 中禁用了自动完成功能。是否有最佳的跨浏览器解决方案?在 Select2 的输入字段中,自动完成默认是关闭的,并且输入不是表单的一部分,所以 this solution 似乎是不可能的。

编辑:根据this page,问题仅在我刷新页面时,如果我在地址栏中按回车则没有问题。

【问题讨论】:

    标签: ruby-on-rails firefox caching safari jquery-select2


    【解决方案1】:

    如果使用 jQuery 刷新/重新加载页面时发生类似问题,请尝试

    document.location.reload(true);

    而不是 document.location.reload();

    详情:https://developer.mozilla.org/en-US/docs/Web/API/Location/reload

    【讨论】:

      【解决方案2】:

      刚刚添加了这段代码:

      $('#shareCurrentInput').val('');
      

      似乎在 Firefox 中刷新时也能正常工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-21
        • 2020-11-13
        • 1970-01-01
        相关资源
        最近更新 更多