Created
June 18, 2010 14:47
-
-
Save gavinblair/443732 to your computer and use it in GitHub Desktop.
jQuery select input manipulation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Add options to the end of a select | |
$("#myselect").append("<option value='1'>Apples</option>"); | |
$("#myselect").append("<option value='2'>After Apples</option>"); | |
// Add options to the start of a select | |
$("#myselect").prepend("<option value='0'>Before Apples</option>"); | |
// Replace all the options with new options | |
$("#myselect").html("<option value='1'>Some oranges</option><option value='2'>More Oranges</option><option value='3'>Even more oranges</option>"); | |
// Replace items at a certain index | |
$("#myselect option:eq(1)").replaceWith("<option value='2'>Some apples</option>"); | |
$("#myselect option:eq(2)").replaceWith("<option value='3'>Some bananas</option>"); | |
// Set the element at index 2 to be selected | |
$("#myselect option:eq(2)").attr("selected", "selected"); | |
// Set the selected element by text | |
$("#myselect").val("Some oranges").attr("selected", "selected"); | |
// Set the selected element by value | |
$("#myselect").val("2"); | |
// Remove an item at a particular index | |
$("#myselect option:eq(0)").remove(); | |
// Remove first item | |
$("#myselect option:first").remove(); | |
// Remove last item | |
$("#myselect option:last").remove(); | |
// Get the text of the selected item | |
alert($("#myselect option:selected").text()); | |
// Get the value of the selected item | |
alert($("#myselect option:selected").val()); | |
// Get the index of the selected item | |
alert($("#myselect option").index($("#myselect option:selected"))); | |
// Alternative way to get the selected item | |
alert($("#myselect option:selected").prevAll().size()); | |
// Insert an item in after a particular position | |
$("#myselect option:eq(0)").after("<option value='4'>Some pears</option>"); | |
// Insert an item in before a particular position | |
$("#myselect option:eq(3)").before("<option value='5'>Some apricots</option>"); | |
// Getting values when item is selected | |
$("#myselect").change(function() { | |
alert($(this).val()); | |
alert($(this).children("option:selected").text()); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment