Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Два связанных multySelect-а, связанные списки 
:(
    Опции темы
pythonwin
Дата 6.11.2006, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Всем привет!

"Два связанных multySelect-а, которые предназначены для выбора данных из левого селеста в правый + настройка очередности элементов в правом селекте"

предлагаю рассмотреть и доработать код:

Код

<html>
<head>
<title>Multy Select</title>

<script type="text/javascript">

left_to_right = function (elem_left, elem_right){
    for (opt=0;opt<elem_left.options.length;opt++) {
        sel_opt=elem_left.options[opt];
        if (sel_opt.selected) {
            sel_opt.selected=false;
            elem_right.appendChild(sel_opt)
            }
        }
    }

left_all_to_right = function (elem_left, elem_right){
    var l = new Array
    for (opt=0;opt<elem_left.options.length;opt++) {
        l[opt]=elem_left.options[opt]
        }
    for (i=0; i<l.length; i++){
        elem_left.removeChild(elem_left.lastChild);
        }
    for (i=0; i<l.length; i++) {
        elem_right.appendChild (l[i]);
        }
    }

right_all_to_left = function (elem_left, elem_right){
    var l = new Array;
    for (opt=0;opt<elem_right.options.length;opt++) {
        l[opt]=elem_right.options[opt]
        }
    for (i=0; i<l.length; i++){
        elem_right.removeChild(elem_right.lastChild);
        }
    l.sort(sort_opt);
    for (i=0; i<l.length; i++) {
        elem_left.appendChild (l[i]);
        }
    }

right_to_left = function (elem_left, elem_right){
    for (opt=0;opt<elem_right.options.length;opt++) {
        sel_opt=elem_right.options[opt];
        if (sel_opt.selected) {
            sel_opt.selected=false;
            elem_left.appendChild(sel_opt)
            }
        }
    var l = new Array;
    for (opt=0;opt<elem_left.options.length;opt++) {
        l[l.length]=elem_left.options[opt]
        }
    l.sort(sort_opt);
    for (i=0; i<l.length; i++){
        elem_left.removeChild(elem_left.lastChild);
        }
    for (i=0; i<l.length; i++) {
        elem_left.appendChild (l[i]);
        }
    }

sort_opt=function (x,y){
    if (x.text==y.text) return 0
    else if (x.text<y.text) return -1
    else if (x.text>y.text) return 1;
    }

f_down_option = function(elem1){
    i = elem1.selectedIndex;
    obj1 = elem1.options[elem1.selectedIndex];
    if (elem1.selectedIndex==elem1.options.length-1) {return false;}
    var l = new Array;
    for (opt=0;opt<elem1.options.length;opt++) {
        switch (opt){
            case i:
            l[l.length]=obj1.nextSibling
            obj1.nextSibling.selected=false;
            break;
            case i+1:
            l[l.length]=obj1
            break;
            default:
            l[l.length]=elem1.options[opt]
            elem1.options[opt].selected=false;
            break;
            }
        }
    n = elem1.options.length
    for (j=0; j<n; j++){
        elem1.removeChild(elem1.lastChild);
        }
    for (j=0; j<n; j++){
        elem1.appendChild(l[j]);
        }
}

f_up_option = function(elem1){
    i = elem1.selectedIndex;
    obj1 = elem1.options[elem1.selectedIndex];
    if (elem1.selectedIndex==0) {return false;}
    var l = new Array;
    for (opt=0;opt<elem1.options.length;opt++) {
        switch (opt){
            case i:
            l[l.length]=obj1.previousSibling;
            obj1.previousSibling.selected=false;
            break;
            case i-1:
            l[l.length]=obj1
            break;
            default:
            l[l.length]=elem1.options[opt]
            elem1.options[opt].selected=false;
            break;
            }
        }
    n = elem1.options.length
    for (j=0; j<n; j++){
        elem1.removeChild(elem1.lastChild);
        }
    for (j=0; j<n; j++){
        elem1.appendChild(l[j]);
        }
}
</script>

</head>

<body>
<div>
 <form mathod="POST" action="http://localhost:8066/index3" name="TForm1_select" onsubmit="javasript:alert('form post')">

<table border="0"><tr><td>


<select name="select_left" multiple="multiple" size="10" id="select_left_id" ondblclick="javascript:left_to_right(document.getElementById('select_left_id'), document.getElementById('select_right_id'));">
<option value="1">№ 1</option>
<option value="2">№ 2</option>
<option value="3">№ 3</option>
<option value="4">№ 4</option>
<option value="5">№ 5</option>
<option value="6">№ 6</option>
<option value="7">№ 7</option>
<option value="8">№ 8</option>
<option value="9">№ 9</option>
<option value="10">№ 10</option>
</select>
</td>
<td>
<button name="button_to_right" id="id_button_to_right" onclick="javascript:left_to_right(document.getElementById('select_left_id'), document.getElementById('select_right_id')); return false;" style="display:block; margin-bottom:15px"> > </button>
<button name="button_all_to_right" id="id_button_all_to_right" onclick="javascript: left_all_to_right(document.getElementById('select_left_id'), document.getElementById('select_right_id')); return false;" style="display:block; margin-bottom:15px"> All>> </button>

<button name="button_all_to_left" id="id_button_all_to_left"  onclick="javascript: right_all_to_left(document.getElementById('select_left_id'), document.getElementById('select_right_id')); return false;" style="display:block; margin-bottom:15px"> << All  </button>
<button name="button_to_left" id="id_button_to_left" onclick="javascript: right_to_left (document.getElementById('select_left_id'), document.getElementById('select_right_id')); return false;" style="display:block; margin-bottom:15px"> < </button>

</td>
<td>
<select name="select_right" multiple="multiple" size="10" id="select_right_id" ondblclick="javascript: right_to_left(document.getElementById('select_left_id'), document.getElementById('select_right_id'));">
</select>
</td>
<td>
<img src="arrow_up.gif" onclick="javascript:f_up_option(document.getElementById('select_right_id'))" style="display:block; margin-bottom:15px"/>
<img src="arrow_down.gif" onclick="javascript:f_down_option(document.getElementById('select_right_id'))" style="display:block; margin-bottom:15px"/>
</td>
</tr></table>

<input type="submit" value="send"/>

 </form> 
</div>
</body>
</html>



Добавлено @ 12:58 
папка во вложении

Присоединённый файл ( Кол-во скачиваний: 17 )
Присоединённый файл  1.zip 1,94 Kb
PM WWW GTalk Jabber   Вверх
AKS
Дата 6.11.2006, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

предлагаю рассмотреть и доработать код

Что ж, в свою очередь могу предложить первую доработку. Сводится она к тому, чтобы заменить 4 функции (left_to_right, left_all_to_right, right_all_to_left, right_to_left) на одну-единственную, типа такой:
Код

function replacer(select1, select2, bool) {
  var element;
  if(bool) {
    while(element = select1.firstChild)
        select2.appendChild(select1.removeChild(element));
  }
  else {
    for(var i = 0; element = select1.options[i]; i++) {
      if(element.selected) {
        select2.appendChild(element);
        element.selected = bool;
      }
    }
  }  
}

Два первых параметра - это левый и правый селекты, а третий - булево значение (все или не все сразу переносить)...

Это сообщение отредактировал(а) AKS - 6.11.2006, 13:58
PM MAIL   Вверх
pythonwin
Дата 6.11.2006, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



AKS, а полный код дать сможешь?
PM WWW GTalk Jabber   Вверх
AKS
Дата 6.11.2006, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

 полный код

"Полный код" чего именно Вас интересует? ;) 
Если серьезно, то я просто переписал четыре одинаковых функции в одну - больше ничего пока не делал... 
Переписать что-ли там все?
PM MAIL   Вверх
AKS
Дата 6.11.2006, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin, вот еще переписал функции для "настройка очередности элементов в правом селекте". Теперь это можно делать одной функцией:
Код

function mover(o, bool) {
  var e = o.options, i = o.selectedIndex, n = (bool) ? i - 1 : i + 1; 
  (i > -1 && n >= 0 && n < o.length) ? (o.insertBefore(o.removeChild(e[i]), 
    e[n]), o.selectedIndex = n) : '';  
}

Первый параметр - правый селект, второй параметр - true (двигать наверх) или false (двигать вниз).
Т.е. вот эти две функции (эта и та, что написана выше) и будут полным кодом...
PM MAIL   Вверх
pythonwin
Дата 6.11.2006, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(AKS @  6.11.2006,  22:19 Найти цитируемый пост)
Т.е. вот эти две функции (эта и та, что написана выше) и будут полным кодом... 

спасибо! smile
+1

полный код:

Код

<html>
<head>
<title>Multy Select</title>

<script type="text/javascript">
function replacer(select1, select2, bool) {
  var element;
  if(bool) {
    while(element = select1.firstChild)
        select2.appendChild(select1.removeChild(element));
  }
  else {
    for(var i = 0; element = select1.options[i]; i++) {
      if(element.selected) {
        select2.appendChild(element);
        element.selected = bool;
      }
    }
  }  
}

function mover(o, bool) {
  var e = o.options, i = o.selectedIndex, n = (bool) ? i - 1 : i + 1; 
  (i > -1 && n >= 0 && n < o.length) ? (o.insertBefore(o.removeChild(e[i]), 
    e[n]), o.selectedIndex = n) : '';  
}

</script>

</head>

<body>
<div>
 <form mathod="POST" action="http://localhost:8066/index3" name="TForm1_select" onsubmit="javasript:alert('form post')">

<table border="0"><tr><td>


<select name="select_left" multiple="multiple" size="10" id="select_left_id" ondblclick="javascript:replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), false);">
<option value="1">№ 1</option>
<option value="2">№ 2</option>
<option value="3">№ 3</option>
<option value="4">№ 4</option>
<option value="5">№ 5</option>
<option value="6">№ 6</option>
<option value="7">№ 7</option>
<option value="8">№ 8</option>
<option value="9">№ 9</option>
<option value="10">№ 10</option>
</select>
</td>
<td>
<button name="button_to_right" id="id_button_to_right" onclick="javascript:replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), false); return false;" style="display:block; margin-bottom:15px"> > </button>
<button name="button_all_to_right" id="id_button_all_to_right" onclick="javascript: replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), true); return false;" style="display:block; margin-bottom:15px"> All>> </button>

<button name="button_all_to_left" id="id_button_all_to_left"  onclick="javascript: replacer(document.getElementById('select_right_id'), document.getElementById('select_left_id'), true); return false;" style="display:block; margin-bottom:15px"> << All  </button>
<button name="button_to_left" id="id_button_to_left" onclick="javascript: replacer (document.getElementById('select_right_id'), document.getElementById('select_left_id'), false); return false;" style="display:block; margin-bottom:15px"> < </button>

</td>
<td>
<select name="select_right" multiple="multiple" size="10" id="select_right_id" ondblclick="javascript: replacer(document.getElementById('select_right_id'), document.getElementById('select_left_id'), false);">
</select>
</td>
<td>
<img src="arrow_up.gif" onclick="javascript:mover(document.getElementById('select_right_id'), true)" style="display:block; margin-bottom:15px"/>
<img src="arrow_down.gif" onclick="javascript:mover(document.getElementById('select_right_id'), false)" style="display:block; margin-bottom:15px"/>
</td>
</tr></table>

<input type="submit" value="send"/>

 </form> 
</div>
</body>
</html>



Это сообщение отредактировал(а) pythonwin - 6.11.2006, 15:35
PM WWW GTalk Jabber   Вверх
SelenIT
Дата 6.11.2006, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 1
Всего: 401



pythonwin, имхо ссылку на левый селект для левого и на правый для правого удобнее и короче записать как this. И еще, в обработчиках не надо писать "javascript:", он нужен только для кода внутри href ссылок.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
pythonwin
Дата 6.11.2006, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(SelenIT @  6.11.2006,  22:45 Найти цитируемый пост)
в обработчиках не надо писать "javascript:", он нужен только для кода внутри href ссылок. 

спасибо - не знал. smile

Цитата(SelenIT @  6.11.2006,  22:45 Найти цитируемый пост)
pythonwin, имхо ссылку на левый селект для левого и на правый для правого удобнее и короче записать как this. И еще,

я специально отхожу от this (как это было реализовано в http://python.org/pypi/Select-Shuttle/0.94)

ещё один момент нужна сортировка для элементов левого селекта. smile
я сделал, но у меня она неэффективная.
PM WWW GTalk Jabber   Вверх
AKS
Дата 6.11.2006, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

нужна сортировка для элементов левого селекта. 

А какие критерии сортировки?
PM MAIL   Вверх
Tony
  Дата 6.11.2006, 22:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

Репутация: 1
Всего: 12



pythonwin привет!
K сожалению нету времени пиать  smile  .Курсовик ждёт...Ну так вот я посмотрел первий твой код.Правда в разбор не вникал.Мне не нравится селект.Тоесть он не красивый. Лутше табли4ку, а на onsubmit формы создавать Ajax response.Правда этот контрол не покатит если форма с file upload(4ерз аях не зака4аешь форму).



--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
pythonwin
Дата 7.11.2006, 06:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(AKS @  7.11.2006,  00:15 Найти цитируемый пост)
А какие критерии сортировки? 

по атрибуту "text"
PM WWW GTalk Jabber   Вверх
AKS
Дата 7.11.2006, 08:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

по атрибуту "text" 
но у Вас ведь есть там такая функция. Хотя тогда лучше такой вопрос - почему Вы написали, что она "неэффективная"? Т.е. что не так?
PM MAIL   Вверх
pythonwin
Дата 7.11.2006, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(AKS @  7.11.2006,  15:34 Найти цитируемый пост)
но у Вас ведь есть там такая функция. Хотя тогда лучше такой вопрос - почему Вы написали, что она "неэффективная"? Т.е. что не так? 

т.е. сортировка состояла из 

Код


right_all_to_left = function (elem_left, elem_right){
    var l = new Array; //создаем массив
    // перекладываем в массив элементы селекта
    for (opt=0;opt<elem_right.options.length;opt++) {
        l[opt]=elem_right.options[opt]
        }
    // удаляем все элементы в правом селекте
    for (i=0; i<l.length; i++){
        elem_right.removeChild(elem_right.lastChild);
        }
    l.sort(sort_opt); // сортируем массив
    // перекладываем элементы из массива в селект
    for (i=0; i<l.length; i++) {
        elem_left.appendChild (l[i]);
        }
    }


и получается что много лишних перемещений
PM WWW GTalk Jabber   Вверх
AKS
Дата 7.11.2006, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

получается что много лишних перемещений 

А я тоже не знаю, как без таких перемещений сделать - не знаю, как сортировать опции без помещения их в массив, а потом снова в селект. Так что предлагаемый мной вариант - это тоже самое:
Код

function sorter(x, y) {
  x = (+x.value), y = (+y.value);
  return ((x > y) ? 1 : (x < y) ? -1 : 0);
}
function orderer(o) {
  var a = [];
  for(var i = 0, l = o.length; i < l; i++)
    a[a.length] = o.options[i];
  a.sort(sorter);
  for(i = 0; i < l; i++) o.appendChild(a[i]);
}

Теперь в функции replacer нужно вызывать orderer(select2) в самом конце кода.
Там сортировка по  value, т.к. по text в данном случае не совсем так, как надо...

PM MAIL   Вверх
pythonwin
Дата 7.11.2006, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



AKS, спасибо, но  мне нужна сортировка левого селекта по "text", а не по "value"

PM WWW GTalk Jabber   Вверх
AKS
Дата 7.11.2006, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Участник форума
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 20.9.2006

Репутация: 2
Всего: 52



pythonwin
Цитата

мне нужна сортировка левого селекта по "text"

Наверняка будет достаточно подставить вашу функцию sort_opt (из первоначального варианта сценария) вместо функции sorter...
PM MAIL   Вверх
pythonwin
Дата 7.11.2006, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(AKS @  7.11.2006,  17:03 Найти цитируемый пост)

Наверняка будет достаточно подставить вашу функцию sort_opt (из первоначального варианта сценария) вместо функции sorter... 

так и сделал smile

конечный код:

Код

<html>
<head>
<title>Multy Select</title>

<script type="text/javascript">
function replacer(select1, select2, bool) {
  var element;
  if(bool) {
    while(element = select1.firstChild)
        select2.appendChild(select1.removeChild(element));
  }
  else {
    for(var i = 0; element = select1.options[i]; i++) {
      if(element.selected) {
        select2.appendChild(element);
        element.selected = bool;
      }
    }
  }  
}

function mover(o, bool) {
  var e = o.options, i = o.selectedIndex, n = (bool) ? i - 1 : i + 1; 
  (i > -1 && n >= 0 && n < o.length) ? (o.insertBefore(o.removeChild(e[i]), 
    e[n]), o.selectedIndex = n) : '';  
}

sort_opt=function (x,y){
    if (x.text==y.text) return 0
    else if (x.text<y.text) return -1
    else if (x.text>y.text) return 1;
    }


function sorter(x, y) {
  x = (+x.value), y = (+y.value);
  return ((x > y) ? 1 : (x < y) ? -1 : 0);
}
function orderer(o) {
  var a = [];
  for(var i = 0, l = o.length; i < l; i++)
    a[a.length] = o.options[i];
  a.sort(sort_opt);
  for(i = 0; i < l; i++) o.appendChild(a[i]);
}

</script>

</head>

<body>
<div>
 <form mathod="POST" action="http://localhost:8066/index3" name="TForm1_select" onsubmit="javasript:alert('form post')">

<table border="0"><tr><td>


<select name="select_left" multiple="multiple" size="10" id="select_left_id" ondblclick="javascript:replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), false);">
<option value="1">№ 1</option>
<option value="2">№ 2</option>
<option value="3">№ 3</option>
<option value="4">№ 4</option>
<option value="5">№ 5</option>
<option value="6">№ 6</option>
<option value="7">№ 7</option>
<option value="8">№ 8</option>
<option value="9">№ 9</option>
<option value="10">№ 10</option>
</select>
</td>
<td>
<button name="button_to_right" id="id_button_to_right" onclick="replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), false); return false;" style="display:block; margin-bottom:15px"> > </button>
<button name="button_all_to_right" id="id_button_all_to_right" onclick="replacer(document.getElementById('select_left_id'), document.getElementById('select_right_id'), true); return false;" style="display:block; margin-bottom:15px"> All>> </button>

<button name="button_all_to_left" id="id_button_all_to_left"  onclick="replacer(document.getElementById('select_right_id'), document.getElementById('select_left_id'), true); return false;" style="display:block; margin-bottom:15px"> << All  </button>
<button name="button_to_left" id="id_button_to_left" onclick="replacer (document.getElementById('select_right_id'), document.getElementById('select_left_id'), false); return false;" style="display:block; margin-bottom:15px"> < </button>

</td>
<td>
<select name="select_right" multiple="multiple" size="10" id="select_right_id" ondblclick="replacer(document.getElementById('select_right_id'), document.getElementById('select_left_id'), false); orderer(document.getElementById('select_left_id'));">
</select>
</td>
<td>
<img src="arrow_up.gif" onclick="mover(document.getElementById('select_right_id'), true)" style="display:block; margin-bottom:15px"/>
<img src="arrow_down.gif" onclick="mover(document.getElementById('select_right_id'), false)" style="display:block; margin-bottom:15px"/>
</td>
</tr></table>

<input type="submit" value="send"/>

 </form> 
</div>
</body>
</html>

PM WWW GTalk Jabber   Вверх
pythonwin
Дата 8.11.2006, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



AKS, спасибо! smile
++1
PM WWW GTalk Jabber   Вверх
JonGol
Дата 10.11.2006, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 10.11.2006

Репутация: 1
Всего: 1



А подскажите пожалуйста, как вывезти все даные что в правом столбце, а то на данный момент приходиться из в начале выделить а потом отправить smile 
PM MAIL   Вверх
pythonwin
Дата 13.11.2006, 06:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: нет
Всего: 36



Цитата(JonGol @  11.11.2006,  02:59 Найти цитируемый пост)
А подскажите пожалуйста, как вывезти все даные что в правом столбце, а то на данный момент приходиться из в начале выделить а потом отправить

а ты записывай их как строку в скрытое поле перед отправкой или просто выдели их всех.
например как:
Код

for (i=0; i<select_left.options.length; i++){
select_left.options[i].selected=true;
}


Это сообщение отредактировал(а) pythonwin - 13.11.2006, 06:46
PM WWW GTalk Jabber   Вверх
SelenIT
Дата 24.6.2007, 03:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 1
Всего: 401



Благодаря бдительности comtatа обнаружен баг - при выделении нескольких опций подряд переносятся только нечетные. В качестве фикса предлагаю "i--;" после 16-й строки. Возможно, кто-нибудь найдет выход покрасивее...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Здесь публикуют скрипты, которые уже проверены в обсуждениях других тем (при этом полезно поставить ссылки на все смежные обсуждения) или переносятся кем-либо из модераторов по просьбе участников, если видно, что в результате обсуждения темы был написан полезный или интересный скрипт. Третий возможный вариант - участник форума публикует скрипт, заведомо известный как полезный и эффективный, для, возможно, небольшой доработки и обсуждения.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Наши скрипты | Следующая тема »


 




[ Время генерации скрипта: 0.1098 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.