опубликовать все значения в поле выбора / списка - PullRequest
1 голос
/ 23 апреля 2010

У меня есть поле выбора в форме - которое я превратил в поле списка, поставив

 <select id="Select1" name="D1" size="5" style="width: 220px">

Я заполняю этот список выбора значениями ...

Когда я отправляю форму, как я могу получить все значения в поле выбора ... это возможно или я могу получить только одно, которое было выбрано.

Проблема в том, что я хочу, чтобы все значения ввыберите (я не выбираю как таковой)

Есть идеи?

Ответы [ 3 ]

1 голос
/ 23 апреля 2010

Как вы добавляете значения в список?Являются ли они статическими или они извлекаются из базы данных.

Если вы извлекаете данные из базы данных, я бы создал функцию, которую вы используете для получения данных и привязки к списку.

Затем используйте ту же функцию, когда вы хотите получить эти значения после публикации.Возможно, вам придется использовать некоторые скрытые поля для передачи любых параметров, которые вы используете, чтобы получить значения для списка в первую очередь.

пример:

function get_models_for_make(int make_id)
  mydata_rs = SELECT name, id FROM models WHERE make_id = make_id
  return mydata_rs
end

, чтобы вы могли использовать эти данные для привязки объектов к вашему списку, а также использовать его для получения значений, которые вы позже связали с вашим списком.*

1 голос
/ 23 апреля 2010

Перед отправкой формы вы можете использовать JavaScript, чтобы вытащить элементы из выбора и поместить их в скрытое текстовое поле (в виде строки с разделителями)

Например, вы можете получить значения, используя

var select1 = document.getElementById('select1');
var values = new Array();

for(var i=0; i < select1.options.length; i++){
    values.push(select1.options[i].value);
}

var allValues = values.join(";");
alert(allValues);

Надеюсь, что поможет.

0 голосов
/ 19 ноября 2010
for (int i = source.Items.Count - 1; i >= 0; i--)
        {
            ListItem item = source.Items[i];

            if (moveAllItems)
                item.Selected = true;

            if (item.Selected)
            {
                // if the target already contains items, loop through
                // them to place this new item in correct sorted order
                if (target.Items.Count > 0)
                {
                    for (int j = 0; j < target.Items.Count; j++)
                    {
                        if (target.Items[j].Text.CompareTo(item.Text) > 0)
                        {
                            target.Items.Insert(j, item);
                            item.Selected = false;
                            break;
                        }
                    }
                }

                // if item is still selected, it must be appended
                if (item.Selected)
                {
                    target.Items.Add(item);
                    item.Selected = false;
                }

                // remove the item from the source list
                source.Items.Remove(item);
            }
        }
...