Try It Editor
Tip: Press
Ctrl/⌘ + Enter
to Run
▶ Run
Reset
Copy
Download
Code
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Selectable Events</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <link rel="stylesheet" href="https://code.jquery.com/ui/1.13.2/themes/base/jquery-ui.css"> <script src="https://code.jquery.com/ui/1.13.2/jquery-ui.min.js"></script> <style> #list{list-style:none;margin:0;padding:0;width:250px;} #list li{margin:3px;padding:0.4em;font-size:14px;background:#f4f4f4;border:1px solid #ccc;} #list .ui-selected{background:#04AA6D;color:#fff;} #log{margin-top:10px;font-family:monospace;background:#f5f5f5;border:1px solid #ddd;padding:8px;} </style> </head> <body> <ul id="list"> <li class="ui-widget-content">Item 1</li> <li class="ui-widget-content">Item 2</li> <li class="ui-widget-content">Item 3</li> <li class="ui-widget-content">Item 4</li> </ul> <div id="log">No selection events yet.</div> <script> $(function(){ $("#list").selectable({ selected: function(e, ui){ $("#log").text("selected: " + $(ui.selected).text()); }, unselected: function(e, ui){ $("#log").text("unselected: " + $(ui.unselected).text()); }, stop: function(e, ui){ var items = $("#list .ui-selected").map(function(){ return $(this).text(); }).get(); $("#log").text("stop - currently selected: " + items.join(", ")); } }); }); </script> </body> </html>
Output