1
0
mirror of synced 2024-11-23 05:26:10 +03:00
Commit Graph

741 Commits

Author SHA1 Message Date
Igor Vaynberg
8b566bf6ce fix hiding of search when minimumResultsForSearch are used. fixes #138 2012-06-18 23:34:54 -07:00
Igor Vaynberg
b7c952a1a3 ignore first empty option in selects when a placeholder is set 2012-06-18 23:16:45 -07:00
Igor Vaynberg
09f24fdda1 add new options.type parameter for ajax helper. fixes #139 2012-06-18 22:10:33 -07:00
Igor Vaynberg
af964bdbad shorten function name for loadingMore() 2012-06-18 20:48:52 -07:00
Aziz Gazanchiyan
663ba1215f Loading next page message formatting implemented, so it could also have localization
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 20:46:51 -07:00
Igor Vaynberg
1e2881d5d1 a small optimization to how many times highlight is called 2012-06-18 20:44:26 -07:00
Igor Vaynberg
b2314bcb86 fix the fix for #129 2012-06-18 20:21:36 -07:00
Igor Vaynberg
9bf38c833c renamed opts.elementBody to this.body for brevity 2012-06-18 20:18:51 -07:00
Aziz Gazanchiyan
693b541361 Improve performance on dropdown detaching
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 20:05:28 -07:00
Aziz Gazanchiyan
a0f067c2b2 Clear placeholder before opening dropdown, fixes #129
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 19:57:08 -07:00
Aziz Gazanchiyan
7684371923 Improve resizeSearch() performance
Signed-off-by: Igor Vaynberg <igor.vaynberg@github.com>
2012-06-18 19:55:38 -07:00
Igor Vaynberg
b825d8ec41 restore smooth scrolling by fixing mouseevent-filtered 2012-06-17 00:45:44 -07:00
Igor Vaynberg
aba23fc3e7 Revert "remove unused code"
This reverts commit 93f5e7508f.
2012-06-17 00:28:18 -07:00
Igor Vaynberg
93f5e7508f remove unused code 2012-06-17 00:13:39 -07:00
creage
64b69425b0 Reduce search field focusing, improving performance
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
9497693b64 style detection for search field sizer corrected
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
492dccd1a5 no need for style if we already have a sizer
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
65eb7c3404 Improve performance on text measuring
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:58 -07:00
creage
0ff41ca512 Performance optimizations
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
creage
68726643ac Save data values to correct context
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
creage
151c3fd2f6 Stick mousemove event to element' context
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-16 22:35:57 -07:00
Igor Vaynberg
43d990c319 attach the dropdown to the element's body instead of the current body. issue #126 2012-06-15 08:29:47 -07:00
Igor Vaynberg
800b7bbb3f dont bubble up ESC keypress. fixes #118 2012-06-14 20:36:22 -07:00
Igor Vaynberg
1d0e9a4a5b a bit of jshint cleanup 2012-06-14 12:16:44 -07:00
Igor Vaynberg
16c868934d minor cosmetic cleanup 2012-06-14 09:39:23 -07:00
Igor Vaynberg
08d4485400 Merge pull request #107 from butsjoh/master
Fixed issue with loading array data and setting text key to a string
2012-06-14 09:37:33 -07:00
Igor Vaynberg
6e36003b0a Merge pull request #111 from chrisforbes/patch-1
Fix typo in comment
2012-06-14 09:36:12 -07:00
Pier-Olivier Thibault
5941fcea25 Using dropdownZIndex as opts. Dropping default value so use can set it via css. 2012-06-14 12:03:38 -04:00
Pier-Olivier Thibault
277ae4ff5a Added zindex options to dropdown so we can make sure it presents itself on top of whatever is existing in the DOM 2012-06-14 11:57:59 -04:00
Pier-Olivier Thibault
7d3ad2cd47 Merge branch 'master' of https://github.com/ivaynberg/select2 into zIndex 2012-06-14 11:56:55 -04:00
Igor Vaynberg
55fd00169e simplify optgroup querying and rendering code. provide a more powerful populateResults() function fixes #58. fixes #105. fixes #84 2012-06-14 00:21:22 -07:00
Andy Fowler
38b9d060b1 make getPlaceholder() compatible with jquery 1.4
(doesn't check data- attrs when using .data())
2012-06-13 18:06:41 -04:00
Chris Forbes
460cd059f9 Fix typo in comment 2012-06-14 09:06:37 +12:00
Johan Buts
cd538772df Fixed issue with defining the text property as string
because data gets reset afterwards also look at
failing example #e10_2
2012-06-13 13:09:43 +02:00
Igor Vaynberg
9fc18a9ca8 minor cleanup 2012-06-12 22:19:08 -07:00
Igor Vaynberg
0ccfd4853c rename updatePositions() to positionDropdown(). more clear 2012-06-12 22:19:08 -07:00
Igor Vaynberg
a6eeadbe7a always detach and append the dropdown on open. this ensures it will be the last element in body and thus have the highest z-index. issue #105. issue #84 2012-06-12 22:19:07 -07:00
Christopher Nadeau
6151ddbb0d Add support for hierarchies and unselectable items. issue #58
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:54 -07:00
Christopher Nadeau
efccc62510 Few tweaks to multi style
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:53 -07:00
Christopher Nadeau
2f3262d39e Absolutely position dropdown. fixes #84.
Changes to detach dropdown and append to body, and absolutely position
dropdown. Fixes clipping problems with overflowing.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-12 22:18:40 -07:00
Igor Vaynberg
d62bc5bef1 various small fixes. closes #99 2012-06-12 19:41:21 -07:00
Alan Ho
0d29fff1dd Merge remote-tracking branch 'upstream/master' 2012-06-10 18:16:12 +08:00
Igor Vaynberg
3ba3e57715 issue #77, blur on touchend - seems more native 2012-06-07 23:56:51 -07:00
Igor Vaynberg
5e18e71cb4 possible fix for issue #77 better blur support for touch devices like ipad 2012-06-07 23:47:10 -07:00
Igor Vaynberg
47064b2483 tweak to issue #85 do not highlight items based on keypresses 2012-06-07 23:09:51 -07:00
Adam Solove
ec759ac809 When not showing search box, up/down arrows and searching still work.
- The hidden search box is displayed off-screen instead of taken off the dom.
- User can type a search, but instead of filtering the results, just highlight the first matching result.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-07 21:56:22 -07:00
Alan Ho
af1c398076 Make initSelection works asynchronously 2012-06-08 12:22:06 +08:00
Igor Vaynberg
4ba25b8095 ability to provide custom matchers. closes #86 2012-06-07 20:47:33 -07:00
Igor Vaynberg
6fe77c6110 disabled mode support wip, issue #76 2012-06-06 22:34:51 -07:00
Igor Vaynberg
c27880c19c Merge branch 'master' of git://github.com/ivaynberg/select2 2012-06-04 17:15:25 -07:00
Igor Vaynberg
c44ea24aa4 renamed roundtripValue to context. closes #72 closes #73 2012-06-04 17:15:11 -07:00
Alexander Pepper
0d98ea03af Adds an additional parameter roundtripValue to function data.
Enables a stored value, which can be passed by the function 'result' to the next call of the function 'data'.

This is a solution for issue #72

Example:

    data: function (term, page, roundtripValue) {
      var options = {
        q: term,
        limit: 5,
      };
      if (typeof(roundtripValue) !== 'undefined' && roundtripValue != null) {
        options['continuation_handle'] = roundtripValue;
      }
      return options;
    },
    results: function (data, page) {
      var roundtripValue = data.continuation_handle;
      var more = typeof(roundtripValue) !== 'undefined';
      return {results: data.results, more: more, roundtripValue: roundtripValue};
    },

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-06-04 16:46:23 -07:00
Igor Vaynberg
26da9f0b2e Merge pull request #71 from niquola/master
fix indexOf with undefined
2012-05-29 17:06:57 -07:00
Igor Vaynberg
f368464132 add drag and drop sort support, fixes #60 2012-05-29 17:04:52 -07:00
nicola
23720246f2 fix internal function indexOf, when undefined passed 2012-05-29 19:15:20 +04:00
Igor Vaynberg
1633d71b4a add container() method that retrieves the main container 2012-05-28 23:15:41 -07:00
Igor Vaynberg
cb7f1da4e6 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-28 15:16:23 -07:00
Igor Vaynberg
9ecce5af7c support numeric text keys in local data. fixes #68 2012-05-28 15:15:58 -07:00
Igor Vaynberg
071d6c73d2 Merge pull request #63 from ericbarnes/tags-tab
Adding tab support for tags
2012-05-23 08:13:07 -07:00
Geoffrey Hing
6dcb276485 Check for nonexistent data attribute in a way that works in jQuery 1.4.2 2012-05-22 11:40:42 -05:00
Eric Barnes
66b789939f Adding tab support for tags
When you select a tag currently the only way to select it was by using the enter key. This change allows the tab key to also select it.

Signed-off-by: Eric Barnes <eric@ericlbarnes.com>
2012-05-22 09:30:10 -04:00
Igor Vaynberg
058ecae750 fixes #61 2012-05-18 14:50:35 -07:00
Igor Vaynberg
af6031039a build script 2012-05-16 10:36:28 -07:00
Igor Vaynberg
e5f628b719 a bit of cleanup and better error handling for options 2012-05-07 09:24:14 -07:00
Igor Vaynberg
a6edacc505 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-07 08:21:16 -07:00
Francisco Facioni
404539e6d3 Aborts the ajax call when a new is coming up 2012-05-06 10:37:51 -03:00
Igor Vaynberg
0160b36a38 missed one place where id is accessed. issue #51 2012-05-03 15:05:39 -07:00
Igor Vaynberg
bf5e7d16de make it possible to overwrite how the id is retreived from a choice. issue #51 2012-05-03 15:00:48 -07:00
Igor Vaynberg
011770a5d5 license tweaks 2012-05-03 09:01:13 -07:00
Igor Vaynberg
5ae45f4124 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-05-02 22:52:27 -07:00
Igor Vaynberg
bd8c40b0e8 jquery 1.4 compat impl of focus check 2012-05-02 22:52:05 -07:00
Igor Vaynberg
a1457fa491 Merge pull request #56 from ProLoser/master
Added support for [placeholder] attribute
2012-05-02 22:50:40 -07:00
Igor Vaynberg
450aad8f46 fixed placeholder bug. closes #55 2012-05-02 22:48:44 -07:00
Dean Sofer
945249f46a Added support for placeholder attribute in addition to data-placeholder 2012-05-02 20:19:00 -07:00
Igor Vaynberg
5f00dd1cfd resize the search field to full width when placeholder is set. fixes #53 2012-05-02 09:26:00 -07:00
Igor Vaynberg
2aeb3d5bd5 fix bug where tagging was broken if strings instead of objects were used 2012-05-02 08:39:55 -07:00
Igor Vaynberg
e0f854d667 copy the args object so changes to it no longer effect other select2s. closes #47 2012-04-27 22:39:40 -07:00
Igor Vaynberg
3b9840e3ff remove debugging statement 2012-04-27 22:28:20 -07:00
Igor Vaynberg
11b0a1662c imrpove handling of objects in tags helper. closes #50 2012-04-27 11:40:32 -07:00
Igor Vaynberg
ee6f8975a6 clear search when val() is called. closes #45 closes #46 2012-04-26 20:04:57 -07:00
Igor Vaynberg
891102ff47 fix select event syncing. closes #41 2012-04-26 19:46:24 -07:00
Dean Sofer
37ddcb64a3 Fixed #43
Made the dropdown menu positioned via pure css instead of using
javascript to constantly adjust its position. YAY PERFORMANCE!

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-04-26 19:31:08 -07:00
Igor Vaynberg
b96079fef6 Revert "realign dropdown when search box moves to new line. closes #43"
This reverts commit 095cdda05e.
2012-04-26 19:29:28 -07:00
Igor Vaynberg
095cdda05e realign dropdown when search box moves to new line. closes #43 2012-04-26 19:17:34 -07:00
Igor Vaynberg
293bd830b2 added closeOnSelect option, closes #40 2012-04-24 10:46:21 -07:00
Igor Vaynberg
253703add3 Merge branch 'master' of git://github.com/ivaynberg/select2 2012-04-20 23:59:48 -07:00
Igor Vaynberg
6ec4d20d02 added focus() and isFocused(). closes #39 2012-04-20 23:59:44 -07:00
Igor Vaynberg
5ccee14cee remove event bindings on destroy. closes #35 closes #36 2012-04-17 08:16:22 -07:00
Igor Vaynberg
d0caa9131c a small tweak to empty string handling in select2.val(). issue #34 2012-04-17 08:05:14 -07:00
Igor Vaynberg
09d7a2de6e Merge branch 'master' of git://github.com/ivaynberg/select2 2012-04-17 08:04:03 -07:00
Igor Vaynberg
b034a55884 added todo for placeholder validation 2012-04-17 08:04:00 -07:00
Igor Vaynberg
a542280595 better handling of empty string in select.val(). issue #34 2012-04-16 22:00:14 -07:00
Igor Vaynberg
c87e5706e7 cleaned up variable name. issue #32 2012-04-16 08:28:54 -07:00
Grzegorz Kaczan
34913e9557 Add "select2-with-searchbox" to the dropdown container if search box is shown.
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-04-16 08:26:30 -07:00
Igor Vaynberg
7bd7139563 added a todo for next ver 2012-04-13 11:29:41 -07:00
Igor Vaynberg
120aff9582 strip BOM from encoding, closes #30 2012-04-13 09:11:23 -07:00
Igor Vaynberg
71848c1353 some minor code cleanup, also fixes #29 2012-04-13 08:59:32 -07:00
Igor Vaynberg
654d1bd3b2 exposed open/close as public. issue #27 2012-04-13 08:18:05 -07:00
Igor Vaynberg
578a8cb0da trim values in arrays produced when splitting user-defined strings. closes #28 2012-04-13 08:07:59 -07:00
Igor Vaynberg
8323051ce3 rewrite classes in a more readable way. closes #20 2012-04-12 00:33:10 -07:00
Igor Vaynberg
1faea146d4 introduced destroy method, closes #18 2012-04-11 23:28:54 -07:00
Igor Vaynberg
c8b274e9ab added ajax.transport variable to provide a custom transport. closes #26 2012-04-11 12:17:58 -07:00
Igor Vaynberg
54033cdb04 monitors source element for change events and syncs the selection. opts.initSelection function has to be specified by the user for this to work because ids have to be mapped back to objects. select2 provides this function automatically for select elements and tags helper. 2012-04-11 00:51:27 -07:00
David Rosen
12a3e68256 Update select2.js 2012-04-10 10:42:40 -07:00
Igor Vaynberg
6183a490a3 minor formatting cleanup 2012-04-10 09:46:20 -07:00
Justin DuJardin
0645a09e8a tags in the exports. 2012-04-10 09:12:19 -07:00
Justin DuJardin
5094df886c Remove duplicate window exports 2012-04-10 09:09:20 -07:00
Igor Vaynberg
a16190c822 only call initSelection() when there is actual input. avoids making users implement empty input check in their initSelection()s 2012-04-10 07:45:09 -07:00
Igor Vaynberg
19810405ce automatically initialize selection in tagging mode. closes #19 2012-04-10 07:31:59 -07:00
Igor Vaynberg
34a7f83f7b removed misplaced logging 2012-04-10 00:16:33 -07:00
Igor Vaynberg
d2ec53e33c initial tagging support via opts.tags 2012-04-10 00:14:11 -07:00
Igor Vaynberg
0ca86701ad generalized selection initialization behind opts.initSelection 2012-04-09 23:50:21 -07:00
Igor Vaynberg
bf25e5e7e4 export classes, issue #13 2012-04-02 08:36:55 -07:00
Igor Vaynberg
b0b70243b6 correct namespace. issue #13 2012-03-31 21:12:23 -07:00
Igor Vaynberg
c913b7e3f9 added reusable helpers into the global window.Select2 namespace. closes #13 2012-03-31 21:11:04 -07:00
Igor Vaynberg
6fee67bcff Merge pull request #5 from justindujardin/jdd-sizable
Add support for flexible width select2 elements.
2012-03-31 11:17:36 -07:00
Justin DuJardin
c5d6cb1327 Deal with non-existent style attributes, and returning calculated pixel widths as a fallback. 2012-03-31 10:20:49 -07:00
Igor Vaynberg
40843b1b98 better handling of non-numeric ids 2012-03-30 21:25:38 -07:00
Igor Vaynberg
26982e1952 change event, closes #11 2012-03-30 14:06:34 -07:00
Igor Vaynberg
6bef0b5bf6 fix placeholder styling broken in a previous code cleanup. closes #12 2012-03-30 13:04:32 -07:00
Igor Vaynberg
538c6d1584 camel cased a var and reformatted after jquery 1.4.2 compat change 2012-03-30 09:45:32 -07:00
Justin DuJardin
b162567c22 jQuery 1.4.2 compatibility : - use attr() instead of prop() - use .bind() and .delegate() instead of .on() - pass ajax success handler as an argument, instead of chaining call to .success()
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2012-03-30 09:43:23 -07:00
Justin DuJardin
576607c46f Undo rebase indentation changes. 2012-03-29 13:51:48 -07:00
Justin DuJardin
de51a5dbdd Hide search.parent() container when minimumResultsForSearch is not met on a single select. 2012-03-29 13:45:36 -07:00
Justin DuJardin
09798e3b5f Remove experimental code that accidentally got checked in. 2012-03-29 13:39:46 -07:00
Justin DuJardin
1fff4788eb compress getContainerWidth(), add missing semicolon. 2012-03-29 13:39:38 -07:00
Justin DuJardin
55a257ddba Better extract width style from inline element :
- Match floating point numbers as well as integers (e.g. "width:99.5%")
  - Strip all string spaces, to match styles specified with variable spacing (e.g. "   width:   5em  ;")
2012-03-29 13:39:18 -07:00
Justin DuJardin
b2c6ced65f Rework select2 and styles to support styled width's (rather than just fixed pixel widths)
- Will not work with styles specified in remote CSS, because there's no easy way to retrieve the original css value.
 - Will work with styles specified inline on the element (regex parse out width value with specified units intact, from the element style attribute)

Tested in Firefox,Chrome,Safari,Opera
2012-03-29 13:38:57 -07:00
Igor Vaynberg
eddc40934c small code cleanup 2012-03-29 11:43:39 -07:00
Igor Vaynberg
b30b455505 Fix CRLF 2012-03-29 11:08:14 -07:00
Igor Vaynberg
341a3cd8b5 fix ie8 compat, closes #7 2012-03-29 10:45:31 -07:00
Igor Vaynberg
1ab192ac7b option to hide the search field if there are just a few results. closes #4 and closes #6 2012-03-28 15:21:43 -07:00
Igor Vaynberg
7cd54f5358 no need to preload results, they will be loaded on open 2012-03-28 14:43:10 -07:00
Igor Vaynberg
d7f0c0a8b1 simplified support for local array data 2012-03-28 14:32:18 -07:00
Igor Vaynberg
f4e0089b1f cleaned up loading/cleaning of result list 2012-03-27 15:06:42 -07:00
Igor Vaynberg
b18b9aecd8 support removing elements that have non-numeric ids 2012-03-26 23:45:08 -07:00
Igor Vaynberg
339c7a850e moving [x] button to the left so its easier to remove multiple sequential selections. closes #3 2012-03-26 14:24:30 -07:00
Igor Vaynberg
1afffb09dc improved blur tracking. closes #2 2012-03-26 14:08:06 -07:00
Igor Vaynberg
f6eb1edbce change paging of remote data to be 1-based instead of 0-based 2012-03-25 22:10:10 -07:00
Igor Vaynberg
b5c4817149 initial support for multiselect mode, issue #1 2012-03-25 20:30:57 -07:00
Igor Vaynberg
53e214d32f initial checkin 2012-03-04 10:58:26 -08:00