Clicking on list box opens control to allow adding to list

Posted on 2014-02-20
Medium Priority
Last Modified: 2014-03-03
I am developing an asp.net application where there are several listboxes I need users to make selections in.   I would like it so that when the user clicks on the box (or perhaps a button beside the box) a pop up allows the user to add and remove items as follows.

Here is the list box in its normal state:

List box Normal
When the user licks into the box the following pops up allowing for changes:

Listbox selection control
Clicking off this control will return the user to the page and the target listbox control will reflect the changes.

I have seen this in action but can't find one to give as an example.
Question by:canuckconsulting
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 26

Expert Comment

ID: 39877019
Hi, maybe you can use Drag and Drop feature

There is a jQuery for this

It is also possible with HTML5

Both are easy to implement

Author Comment

ID: 39877029
Thanks but not quite what I'm after.  

The page it is on is very busy so I'm trying to conserve space.  I need the listbox  to kind of expand out to include a selection box when it is clicked.  This way the space is used when it is needed but once the selection is made only the selected items are shown.
LVL 82

Accepted Solution

leakim971 earned 2000 total points
ID: 39877614
Test page : http://jsfiddle.net/L9VhF/

    <select id="listbox" multiple="multiple">

<div id="dialog">
    <select id="a" multiple="multiple">
        <tr><td><button id="pop">>></button></td></tr>
        <tr><td><button id="push"><<</button></td></tr>
    <select id="b" multiple="multiple">

Open in new window

jQuery(function($) {
    $("#listbox").click(function(evt) {
        $("option", this).each(function() {
            var text = $(this).text();
            $("option", "#b").filter(function() { return $(this).text() == text; }).remove();
        autoOpen: false,
        modal: true,
        resizable: false,
        draggable: false,
        close: function(event, ui) {
            $("option", "#a").each(function() {
            $("option", "#a").appendTo("#b");
    $("#pop").click(function() {
        $("option:selected", "#a").appendTo("#b");
    $("#push").click(function() {
        $("option:selected", "#b").appendTo("#a");

Open in new window

LVL 26

Expert Comment

ID: 39877645

Author Closing Comment

ID: 39901253
worked perfectly...thanks!

Featured Post

How To Reduce Deployment Times With Pre-Baked AMIs

Even if we can't include all the files in the base image, we can sometimes include some of the larger files that we would otherwise have to download, and we can also sometimes remove the most time-consuming steps. This can help a lot with reducing deployment times.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

FAQ pages provide a simple way for you to supply and for customers to find answers to the most common questions about your company. Here are six reasons why your company website should have a FAQ page
Without even knowing it, most of us are using web applications on a daily basis.  In fact, Gmail and Yahoo email, Twitter, Facebook, and eBay are used by most of us daily—and they are web applications. We generally confuse these web applications to…
In this tutorial viewers will learn how to style a decorative dropcap for the first letter in a paragraph using CSS. In CSS, create a new paragraph class by typing "p.fancy": Then, to style only the first letter of the first sentence, include the ps…
The viewer will receive an overview of the basics of CSS showing inline styles. In the head tags set up your style tags: (CODE) Reference the nav tag and set your properties.: (CODE) Set the reference for the UL element and styles for it to ensu…
Suggested Courses

718 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question