Skip to content
This repository was archived by the owner on Apr 18, 2026. It is now read-only.
This repository was archived by the owner on Apr 18, 2026. It is now read-only.

Original options order incorrect in Chrome #198

Closed

Description

@denmulryan

I have a selectize dropdown with numeric entries from 1 to 31 (i.e. days in month) created from the original select element. Options are sorted correctly in Firefox but incorrectly in Chrome.

Activity

  1. brianreavis commented on Dec 5, 2013

    @brianreavis
    Member

    Can you provide a jsfiddle that reproduces this problem? There is a test in place for this, so I'm curious what's going on...

  2. ifsred commented on Dec 10, 2013

    @ifsred

    I can confirm incorrect behaviour when using this jsfiddle. In Chromium browser I always got options sorted like [7, 1, 3, 4, 5, 6, 2, 8, 9, 10, 11, 12], but in Firefox options are sorted from 1 to 12.

  3. eliashdezr commented on Dec 10, 2013

    @eliashdezr

    I'm having a similar issue. Selectize doesn't use the order of my Array of Objects that is passed from my Web Service. Does anyone knows how to solve this issue? The filter option is not enabled btw.

  4. sluukkonen commented on Dec 11, 2013

    @sluukkonen

    I had this problem with 0.7.7, but upgrading to 0.8.5 fixed it for me.

  5. mysterfitz commented on Mar 4, 2014

    @mysterfitz

    I am experiencing this issue using 0.8.5. It's a fairly serious problem, as users kind of expect days of the month to be linear. The jsfiddle above is using 0.8.4 and exhibits the same behavior I see in 0.8.5.

  6. mysterfitz commented on Mar 5, 2014

    @mysterfitz

    For any other lost pilgrims who have been fighting this issue...
    When setting selectize on an element, if you can provide the data in the desired order, the sort can be disabled by setting 'sortField: []' in the properties. This will prevent your options from being mis-ordered in Chrome.

  7. vemv commented on Mar 10, 2014

    @vemv

    sortField: [] doesn't work for me unfortunately.

  8. enoshixi commented on Mar 10, 2014

    @enoshixi
    Contributor

    The problem is that ECMAScript standard does not guarantee Array.sort is a stable sort (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#Description).

    If you have a value you can sort by, you can always specify it as a sortField: sortField: [{ field: 'value' }] http://jsfiddle.net/3pRC6/

    Or you can add an $order property to your objects which is what selectize checks for by default. http://jsfiddle.net/tm65s/

  9. vishalvijay commented on Aug 20, 2014

    @vishalvijay

    Same issue here using v0.11. I able to solve by sortField: [].

  10. daylen commented on Oct 7, 2014

    @daylen

    I have the same issue; elements are totally out of order in Google Chrome 39 but are in order in Safari 8 beta. Using Selectize 0.11. The fix was to use sortField: []. Not sure why that works, but it does.

  11. mike-suggitt commented on Nov 25, 2014

    @mike-suggitt

    It looks like this is still an issue. I've just forked the repo and get the same issue when remotely retrieving data. Options are placed into an associative array indexed by their id. This fundamentally reorders them. Applying no sortField or a sortField of [] doesn't work for me. What I've looked to do is re-assign the $order property that is the default sort property. This usually looks at non-dynamic data without ids (i.e. html option tags) and assigns it as an incremental index. I overwrite this for dynamic data and so if no sortField is specified it falls back to the $order property and works correctly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions