1
0
mirror of synced 2024-11-30 08:36:03 +03:00
Commit Graph

541 Commits

Author SHA1 Message Date
Igor Vaynberg
31101764ff add missing element prop to data. fix #936 2013-03-01 00:54:11 -08:00
Igor Vaynberg
8520793f25 workaround for chrome focus bug. fixes #939 2013-02-28 19:47:19 -08:00
Adam
dacf51361d Default local initSelection returns the actual selected items
Fix for issue #934. The default initSelection uses a matcher to find
items that match the selection, but if the data is hierarchical what
the matcher returns may actually be grouping elements, so they can't be
treated as a list of matching items.  This fix runs the matcher but
rather than using its return value it collects the matching item(s)
into a closure-scoped variable and then returns that.
2013-02-27 17:05:19 -08:00
Igor Vaynberg
83d77cfa62 fix search field focussing problems. fixes #922 2013-02-27 08:53:44 -08:00
Vincent Petry
08b75a1798 Do not trigger event when calling clear() from val() with empty value 2013-02-21 10:53:16 +01:00
Igor Vaynberg
cd0adbe913 fix duplicate values in IE. fix #840 2013-02-20 19:06:05 -08:00
Igor Vaynberg
8e9e65f864 Error when clearing a single-select box multiple times. fix #908 2013-02-20 18:36:11 -08:00
Igor Vaynberg
250447b53a Clicking the clear button raised the changed event twice. fixes #867 2013-02-20 08:51:03 -08:00
Igor Vaynberg
38758d754b fix ajax url() context. fixes #895 2013-02-19 14:11:38 -08:00
Igor Vaynberg
70be25cc6d fix ajax url() context. fixes #895 2013-02-19 13:21:57 -08:00
Igor Vaynberg
9bf4614cd5 fix ajax url() context. fixes #895 2013-02-19 11:54:38 -08:00
Igor Vaynberg
6b65976e17 Merge pull request #893 from bgertonson/ajax_url
#608 fix to allow distinct ajax urls
2013-02-19 10:03:28 -08:00
Bryan Gertonson
302c87b197 Because a shared options object is passed around when creating each instance of a select2 widget, the query function that was built would use the last ajax url that was set on the options object for all select2 widgets. By using a variable scoped to the closure, the ajax url can be maintained per select2 instance. 2013-02-19 11:18:54 -06:00
Vitaly
dea7979f11 TypeError: Cannot call method 'positionDropdown' of undefined 2013-02-19 12:19:27 +04:00
Lee Baker
6278e7cca0 Fixing when the data helper is a function for the local query
Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-02-16 18:33:27 -08:00
Igor Vaynberg
7d908da52f allow data helper to be a function 2013-02-14 19:52:43 -08:00
Igor Vaynberg
76cd145380 fix placeholder sizing. fixes #430 2013-02-14 01:05:28 -08:00
Igor Vaynberg
179ba17174 do not take over mouseup event in dropdown. fixes #857 2013-02-14 00:49:45 -08:00
Igor Vaynberg
c081d0f00c fix placeholder problem. fixes #853 2013-02-13 01:15:05 -08:00
Igor Vaynberg
cd3d7421c4 allow hiding search field permanently. #189 2013-02-12 00:11:24 -08:00
Igor Vaynberg
8868d59176 delay creation of mask until opening. 2013-02-11 22:16:30 -08:00
Kevin Brown
940d1f2d67 Better imitate native touch experience 2013-02-11 20:31:18 -05:00
Igor Vaynberg
9035dfcb93 equal and indexof need to support comparing items of differnet types, ie string vs number. this is needed because numeric ids stored in val() are strings and need to be compared against data ids which are numbers. fixes #840 2013-02-10 15:16:38 -08:00
Igor Vaynberg
b3a0c3269a ignore modifier keys when enter is pressed. fixes #836 2013-02-09 23:55:34 -08:00
Igor Vaynberg
acdbb02498 open multi dropdown on paste. fixes #577 2013-02-09 23:24:09 -08:00
Igor Vaynberg
be76cd9ded Merge pull request #599 from DataDog/master
Update context from callback data on `query` call
2013-02-09 23:05:12 -08:00
Igor Vaynberg
bd1dfbd49d Revert "* Fix of issue 550 Select2 and CSS Transforms: dropdown menu is off position: https://github.com/ivaynberg/select2/issues/550"
This reverts commit ef8c49f85f.
2013-02-09 22:19:59 -08:00
Igor Vaynberg
cf2b696fd9 fire change on clear. fixes #558 2013-02-09 20:39:33 -08:00
Igor Vaynberg
f15583a555 make query() aware of the element select2 is attached to. fixes #561 2013-02-09 20:22:21 -08:00
Bob Burton
ef8c49f85f * Fix of issue 550 Select2 and CSS Transforms: dropdown menu is off position: https://github.com/ivaynberg/select2/issues/550
jquery offset() returns incorrect value when ancestor container has css transform applied to it, causing dropdown to appear in incorrect position.

Using { top: variable.offsetTop, left: variable.offsetLeft } instead of variable.offset() fixes this issue

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
2013-02-09 19:55:04 -08:00
Igor Vaynberg
6c9aef4bb3 fire selected before close. #835 2013-02-09 19:13:26 -08:00
Igor Vaynberg
a4c76f2dfb added selected and removed events. fixes #835 2013-02-09 16:44:44 -08:00
Igor Vaynberg
d54378563c fix closeOnSelect and maximumSelectionSize combo bug. fixes #672 2013-02-09 15:48:20 -08:00
Igor Vaynberg
6c4b96791d another tweak for css class filtering. #834 2013-02-09 15:14:45 -08:00
Igor Vaynberg
150160f183 sync css classes. fixes #834 2013-02-09 14:29:48 -08:00
Igor Vaynberg
ebc436c42b improve val() handling on multiselect. fixes #654 2013-02-09 09:41:35 -08:00
Igor Vaynberg
2f53c251d4 added params ajax option to pass extra params to transport. fixes #492 2013-02-09 01:20:19 -08:00
Igor Vaynberg
d56f43092b introduce highlight event. fixes #529. fixes #762 2013-02-09 00:45:14 -08:00
Igor Vaynberg
65af98cfed improve dropdown open up/down mode. fixes #589 2013-02-09 00:08:38 -08:00
Igor Vaynberg
640e7066d9 remove the val(' ').val('') work around in firefox as it is no longer needed. fixes #832 2013-02-08 21:53:43 -08:00
Igor Vaynberg
90998d8442 fire open event after the drop has been opened 2013-02-08 12:21:06 -08:00
Igor Vaynberg
d04d127cab fix triggering of unwated change. #824 2013-02-08 09:49:44 -08:00
Igor Vaynberg
0a201b07a5 Fixed 'width' and 'containerCss' incompatibility. fixes #828 2013-02-08 09:40:47 -08:00
Igor Vaynberg
69d4e0896d Fixed 'width' and 'containerCss' incompatibility. fixes #828 2013-02-08 09:34:09 -08:00
Igor Vaynberg
ef364d2118 better handling of first character typed. fixes #196 2013-02-08 09:33:18 -08:00
Igor Vaynberg
3be3188853 fix bug in destroy method that would keep the original element hidden. fixes #815 2013-02-07 16:20:29 -08:00
Igor Vaynberg
3ec535ec5b make search work with chinese/japanese imes. fixes #814 2013-02-07 16:17:44 -08:00
Igor Vaynberg
275e094dff fix infinite recursion on focus. fixes #816 2013-02-07 16:16:26 -08:00
Stanislav Lesnikov
946a1c6329 Add missing semicolons 2013-02-08 00:46:29 +01:00
Igor Vaynberg
270d4bad07 default initSelection in tags mode instead of overriding it. fixes #811 2013-02-06 15:26:19 -08:00
Igor Vaynberg
d1e9531a0a use a form of attr that will always set the value. fixes #810 2013-02-06 14:02:15 -08:00
Igor Vaynberg
4ba14bbf01 disable ajax caching, fixes #807 2013-02-05 21:28:33 -08:00
Igor Vaynberg
b55efddf07 pass escape markup into formatResult 2013-02-05 17:25:32 -08:00
Igor Vaynberg
e78dc69a6b call escape markup on results 2013-02-05 15:16:21 -08:00
Igor Vaynberg
c90bfc3e22 Merge pull request #702 from skivvies/master
allow passing a function for maximumSelectionSize
2013-02-05 15:05:57 -08:00
Igor Vaynberg
81a0e2610a improve placeholder management. fixes #712 2013-02-05 15:02:43 -08:00
Igor Vaynberg
df2aaa0cfc disable focus-via-tab when disabled. fixes #614 2013-02-05 14:50:06 -08:00
Igor Vaynberg
8332d6a7e9 fix more hierarchical selection bugs. fixes #775 2013-02-01 15:21:07 -08:00
Igor Vaynberg
ecbdc9305b minor optimization. #787 2013-02-01 12:27:30 -08:00
Igor Vaynberg
5374b8799b sync disabled and readonly statuses off original element even post creation 2013-02-01 12:21:28 -08:00
Igor Vaynberg
22dba24881 fix selectOnBlur when closed by means other then tab key. fixes #470 2013-02-01 11:09:08 -08:00
Igor Vaynberg
a19e33e3af ignore configured placeholder on selects without first empty option. fixes #785 2013-02-01 10:46:40 -08:00
Igor Vaynberg
76295bb5e9 use the dropdown mask to close open flyouts instead of a global listener. also move the original element off screen instead of hiding it so clicking a label focuses select2 instance 2013-01-31 23:58:42 -08:00
Igor Vaynberg
c66a91a9bb allow '0' vals to be set. fixes #646 2013-01-31 17:10:30 -08:00
Igor Vaynberg
32249cc7f0 better support orientation change on mobile. #782 2013-01-31 16:45:43 -08:00
Igor Vaynberg
300e99fcd5 Merge pull request #756 from socialceramics/url-function-with-arguments
Ajax `url` option (when function) now called with same arguments and context as `data` option
2013-01-31 14:31:32 -08:00
Igor Vaynberg
4482c2af85 by default do not trigger change from val. #771 #619 2013-01-31 14:25:51 -08:00
Igor Vaynberg
273ec1438e Merge pull request #771 from phtrivier/issue-619
#619 : val takes an optional argument to avoid triggering 'change'
2013-01-31 14:24:45 -08:00
Igor Vaynberg
3f87728f7f fix highlighting bugs introduced by disabled option support. fixes #765 closes #775 2013-01-31 13:15:46 -08:00
Igor Vaynberg
7a006a7259 fix scroll event handling since it doesnt bubble. also add a shim behind the dropdown, this allows it to properly close even when used inside modals. sometimes modals will place their own shim that closes the modal and aborts the default mousedown event. in such cases the modal would close but the dropdown element would still float on the screen now detached and the only way to close it would be to make a selection 2013-01-31 10:52:18 -08:00
Igor Vaynberg
3f14f773f9 dont error out when 'x' is removed really fast multiple times. fixes #745 2013-01-30 22:39:03 -08:00
Igor Vaynberg
db39cdf584 remove dead code. fixes #772 2013-01-30 22:29:19 -08:00
Igor Vaynberg
ee01ab79ad fixes #770 2013-01-30 22:23:18 -08:00
Igor Vaynberg
c270d3e4a3 do not close the dropdown on resize or scroll, instead keep it positioned. fixes #753 #669 #719 2013-01-30 21:49:57 -08:00
phtrivier
cf095d9fee #619 : val takes an optional argument to avoid triggering 'change' 2013-01-30 10:21:40 +01:00
Barry Coughlan
89d583736a Fix issue introduced by 20950e0f0c.
Selected items and other invisible items were not ignored by highlightUnderEvent when calculating index.
This caused highlighting of incorrect items when the list contained hidden items.
2013-01-29 18:45:33 +00:00
Jason Purcell
56631aa09f adding defensive check for existence of select2 on the target element during the document mousedown/touchend events 2013-01-28 15:01:17 -05:00
Jason Purcell
67af5a43f1 ajax url function is now passed same arguments and called with same context as data option 2013-01-25 12:40:17 -05:00
Igor Vaynberg
434827d22c Merge pull request #747 from Kollibri/master
Fix issue with disabled options (Issue #733)
2013-01-24 08:42:06 -08:00
Igor Vaynberg
acc6f7923e optimize string comparisons. fixes #743 2013-01-24 08:31:43 -08:00
Amanda Myer
1c183ef23b Update select2.js 2013-01-24 11:09:30 -05:00
Amanda Myer
20950e0f0c Update select2.js
Fixed issues with select2 and disabled options, most of it having to do with incorrectly determining the index of an option when disabled options were being displayed.
2013-01-24 08:59:09 -05:00
Arnar Birgisson
f49b1006aa Use tags correctly when set as a function. 2013-01-23 22:25:34 +01:00
Ronald J Kimball
7ec1e753dc Avoid error when label has no matching element
$('#no_such_element').data("select2") returns null rather than
undefined (jQuery 1.9.0).
2013-01-23 13:53:15 -05:00
Igor Vaynberg
4e92c8b1b4 allow ajax.data to be undefined. fixes #732 2013-01-23 09:24:23 -08:00
Igor Vaynberg
7d8409393c fix parenthesis mismatches 2013-01-23 08:57:10 -08:00
Cristhian Valencia B.
81cfaa587a Update select2.js
missing parenthesis at line :1448 & :1845
2013-01-23 11:14:12 -05:00
Schlogen
567cb7dbe7 Fix for jQuery 1.9 2013-01-22 17:00:38 -05:00
Igor Vaynberg
e89a851727 Merge pull request #715 from vitalets/default-initselection-hidden
Default initSelection() for hidden element
2013-01-16 11:40:26 -08:00
vitalets
88a86e5953 add default initselection for single and multi 2013-01-16 22:35:24 +04:00
vitalets
3570ab523e add third param to matcher in local 2013-01-16 22:09:31 +04:00
vitalets
f63a10ccb1 ready for single 2013-01-16 21:29:17 +04:00
Igor Vaynberg
fa908972b4 Merge pull request #610 from MaxxSoftware/master
Firefox Tab and Enter keys issue.
2013-01-16 08:45:11 -08:00
Igor Vaynberg
fcea1523fd Merge pull request #703 from jelte12345/master
Fixed my own XSS pull request to actually work
2013-01-14 09:52:40 -08:00
_pants
7bdad56837 allow passing a function for maximumSelectionSize 2013-01-12 11:37:57 -05:00
Jelte Fennema
c0dd741a79 Fixed testing mistake 2013-01-12 17:29:48 +01:00
Igor Vaynberg
353672832d Merge pull request #691 from jelte12345/master
Fix XSS injection
2013-01-11 16:39:48 -08:00
Le Wang
a1273b639a add loadMorePadding option
- Trigger load before scrolling to the very bottom.
- When scrolling very fast, unless we pre-load entries, the page itself
  will scroll.
2013-01-10 17:02:00 +08:00
Frédéric Camblor
a770ade670 Allow to pass a callback as ajax.url 2013-01-08 18:54:14 +01:00
Igor Vaynberg
b4f6462bb2 Merge pull request #643 from akinnee/master
Added an option: select highlighted option on blur, "selectOnBlur: false"
2013-01-08 09:02:23 -08:00
Jelte Fennema
a65c08097e Make the escapeMarkup function escape html tags and some other characters and apply it to usefull places 2013-01-08 11:35:58 +01:00
Igor Vaynberg
8e9a231847 add [option disabled='disabled'] support. fixes #480 fixes #157 2013-01-04 09:16:48 -08:00
Igor Vaynberg
7a797300a5 Merge pull request #652 from tispratik/master
Be able to limit each input to a maximum length
2012-12-27 20:56:14 -08:00
Igor Vaynberg
df5a03f0b6 Merge pull request #594 from omab/master
Results sorting on populateResults function
2012-12-27 08:37:54 -08:00
Pratik Khadloya
007fd8c3f5 Be able to limit each input to a maximum length 2012-12-14 13:49:01 -08:00
Grzegorz Klimek
0d6ba97144 Update select2.js
jQuery("input#someId").attr("tabIndex") don't work well in new jQuery 1.8+.
When you try this on field  that don't have tabIndex attr you get undefined 
(but document.getElementById("someId").tabIndex returns '0').
This is why Select2 element onBlur stay whit attr tabindex='-1' 
and you can't navigate form with 'tab' key.
This simple ' || 0' fix this bug.
2012-12-13 10:39:34 +01:00
Alex Kinnee
fa6313afa4 Added the option to select highlighted upon blur, false by default. Original functionality is maintained by default. 2012-12-12 13:54:47 -05:00
tom
b33c86e5e4 Fixes >1 multi-select dropdown being open at the same time
Bug was reproduced on latest FF/Chrome/Safari, but IE exibits correct
behavior with or without the fix.

See: http://jsfiddle.net/tmD7c/2/
2012-12-10 12:46:27 -05:00
Chris Rueber
86952b4ed9 Update select2.js
Adding case to fix placeholder not being displayed when element not visible.
2012-12-08 11:36:07 -06:00
Julien Muetton
09d29585a0 Triggers change when value is set programaticaly.
``` js
$('#select').select2().
    on('change', function () {
        alert('change');
    }).
    val(['foo']);
```

Now shows an alert window.
2012-12-03 09:59:15 +01:00
MaxxSoftware
327e00b0ba Firefox Tab and Enter keys issue.
When item is selected by enter, the list is reopened.
Also pressing tab on focused element with drop list cause immediate reopening with empty search result list.
2012-11-28 12:45:14 +06:00
Conor Branagan
57638ab392 update this.context with data context on query calls 2012-11-21 15:51:31 -05:00
Matías Aguirre
53eaf1fbe1 Results sorting option. Refs #95 2012-11-21 14:12:01 -02:00
Igor Vaynberg
2eb28a60aa allow override of createSearchChoice in tags. fixes #567 2012-11-15 09:56:05 -08:00
MaxxSoftware
ac7de2a756 Update select2.js 2012-11-15 17:26:19 +06:00
MaxxSoftware
1560a3918a Update select2.js
DropDown displayed on the left of select-container if not fit right.
2012-11-15 17:16:55 +06:00
Igor Vaynberg
aa686aa47e Merge pull request #541 from brendanheywood/master
Fixed bug with closeOnSelecet is false
2012-11-02 08:57:15 -07:00
Brendan Heywood
6c59b1e99c Only select the first suitable item if nothing is already selected 2012-11-01 18:00:38 +10:00
Brendan Heywood
291f595a03 Fixed scrolling bug when closeOnSelect is false 2012-10-31 16:35:34 +10:00
tom
ca98ce5564 trivial change: pluralize formatInputTooShort function 2012-10-24 23:48:00 -04:00
Igor Vaynberg
4a363c4b30 Merge pull request #503 from todd-givainc/master
Feature: Locked Items
2012-10-24 13:48:46 -07:00
Kevin Warrington
77ea616d0c fix issue #517 2012-10-22 17:00:03 -06:00
Todd Rafferty
1d4ea633aa Goofed, changed disabled to locked. 2012-10-16 14:41:03 -03:00
Todd Rafferty
43939f08a4 Create locked items that can't be removed.
This patch creates multi select items that can't be removed.
2012-10-16 14:33:35 -03:00
Igor Vaynberg
3ed91862fa fixed dropdown positioning when select2 has margins. fixes #501 2012-10-16 10:22:25 -07:00
Igor Vaynberg
c4e00c6926 Merge pull request #485 from lisandropuzzolo/patch-1
Update select2.js
2012-10-10 13:35:15 -07:00
Kevin Brown
f5ac9bf90c Fixed anchor hrefs
Fixes #482: Mobile Safari issues
2012-10-10 17:24:58 -03:00
lisandropuzzolo
da414577e8 Update select2.js
Fixed line 2154 to allow Select2 work with multiple levels hireachal data.
2012-10-10 12:07:53 -03:00
Igor Vaynberg
26a3d5342b update license in js header 2012-10-03 11:30:12 -07:00
Igor Vaynberg
732ad030a0 fix tab index issues. fixes #408 2012-10-02 10:09:31 -07:00
Kevin Brown
c4c1cbabde Fixed placeholder detection. Fixes #424. 2012-09-24 18:35:13 -03:00
Igor Vaynberg
98976946d6 pass element attr to initSelection for selects upon init 2012-09-24 09:22:36 -07:00
Igor Vaynberg
fccc84cd11 relax formatSearching check. #434 2012-09-21 08:19:31 -07:00
Jacob Haslehurst
3fcfbed03a formatSearching can be disabled
formatSearching can be disabled by returning null from the function which allows the searching message to be disabled.
2012-09-21 16:12:27 +10:00
brettmas
c577158599 original option not available to formatSelection on init
The original option isn't available to formatSelection when initializing the selection from a select[multiple]
2012-09-21 02:39:58 +10:00
Igor Vaynberg
2027c0cebf trigger blur handlers on source element when select2 is blurred 2012-09-19 19:37:58 -07:00
Igor Vaynberg
93ed30d67a mange disabled attr on source element. fixes #427 2012-09-19 19:33:46 -07:00
Igor Vaynberg
a145378848 postprocess results always if closeOnSelect is false. fixes #348 2012-09-18 08:42:23 -07:00
Igor Vaynberg
f18caa5957 jquery 1.8.x fixes. fixes #388 2012-09-17 19:52:42 -07:00
Igor Vaynberg
2cb435680b fixes #366 2012-09-17 19:34:50 -07:00
Igor Vaynberg
bdd746844d tweak formatSelection for #400 2012-09-17 19:25:21 -07:00
Igor Vaynberg
f7e78f6ed9 label for support for id's with brackets, eg id='name[first]'. fixes #422 2012-09-17 18:43:26 -07:00
Igor Vaynberg
4b1204c5de improve keyboard handling. fixes #389 2012-09-13 16:38:20 -07:00
Igor Vaynberg
908c3583d7 bind abbr handler before mousedown. fixes #386 2012-09-13 14:42:53 -07:00
Igor Vaynberg
ab7ab5b3f7 allow clearing on backspace as well as delete. fixes #396 2012-09-13 00:09:17 -07:00
Igor Vaynberg
6690cc449c fix clearing when using jquery 1.6. fixes #386 2012-09-12 16:20:52 -07:00
Jean Boussier
7bc63dd264 Get rid of 2 useless jQuery.delegate event handler 2012-09-12 14:57:35 -04:00
Jean Boussier
3387853d9c Keep a cached reference to jQueryfied document 2012-09-12 14:50:17 -04:00
Jean Boussier
720bdb8c4f Store last mouse position in a variable instead of document datastore
It's hundred times faster. See http://jsperf.com/data-vs-variable
2012-09-12 14:47:25 -04:00
Igor Vaynberg
96657a16aa fix for dropdown closing as soon as its opened in IE8. fixes #369. fixes #354 2012-09-10 17:05:11 -07:00