Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.26;
Скачать: CL | DM;

Вниз

Мультиселект в html (multiple в DOM)   Найти похожие ветки 

 
HF-Trade ©   (2009-05-26 17:50) [0]

На странице присутствет поле с мультиселектом (типа TListBox)
Код -
<select name="xxx"
id="category"
onchange="onCategoryChange(this.value)"
class="cat_select" multiple>
<option value="0"></option><option style="color: black"
value="1" >Главная</option><option style="color: black"
value="4" >четыре</....и т.д.

Выбрать один итем можно..
IF ovElements.item(I).name="xxx" Then
 OvElements.Item(I).SelectedIndex:="1";

А как осуществить множественный выбор?(Установить фокус?)
Вообщем необходимо выбирать к примеру 1,3,7 элемент списка.


 
palva ©   (2009-05-26 18:20) [1]

Вот здесь рассказано, как
http://www.tigir.com/javascript_select.htm


 
HF-Trade ©   (2009-05-26 19:21) [2]

IF ovElements.item(I).name="xxx" Then
OvElements.Item(I).Options[1]:=Selected;
Если я правильно понял там описан вот такой способ...
Но не работает...


 
palva ©   (2009-05-26 19:54) [3]

Наверно, вы поняли неправильно. Диагностику, которую выдал компилятор, вы не написали, а у меня нет под рукой Delphi, чтобы посмотреть диагностику, порожденную вашим кодом. Поэтому привожу общие соображения.
Selected это логическое свойство. Ему нужно присвоить значение True. Если вы затрудняетесь, как это записать на Delphi, посмотрите исходники модуля (по-моему, это mshtml) в котором описана браузерная DOM.


 
vipus ©   (2009-05-27 01:58) [4]

Поделитесь инфой, пожалуйста, если нашли решение.
Почитал, что скинул Palva...

Никак не пойму, как выбрать несколько итемов (как мышкой с зажатым Ctrl)

Попробовал так:
IF ovElements.item(I).name="qwerty" Then
 OvElements.Item(I).Options(1)Selected:=True;

При выполнении вылазит ошибка -
EOleSysError with message "Не поддерживается"

Сделал страничку для экспериментов) такого вида -

<html>
<head>
 <title>selection</title>
</head>
<body>
<select size="5" multiple>
 <option>Один</option>
 <option>Два</option>
 <option>Три</option>
 <option>Четыре</option>
 <option>пять</option>
</select>
</body>
</html>

Может, кто скажет, как выбрать (выделить) 1 и 3 например строку...

Спасибо.


 
palva ©   (2009-05-27 23:06) [5]

Посмотрите, как здесь работают с опциями
http://parsing-and-i.blogspot.com/2009/02/javascript-twebbrowser-delphi.html
У item два параметра, то есть надо писать типа Item(I, 0) Полученный итем надо преобразовать к IHTMLOptionElement (или извлечь интерфейс, как это делается по ссылке). Вы исходники-то mshtml.pas почитайте все-таки. В соответствие с ними и разворачивайте Javascript в Delphi



Страницы: 1 вся ветка

Текущий архив: 2009.07.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.05 c
2-1243571683
Gans
2009-05-29 08:34
2009.07.26
Сообщение при свернутом окне


2-1244023953
andzav
2009-06-03 14:12
2009.07.26
Из DataTimePicker вставляется в поле не только дата, но и время


2-1243843842
девушка
2009-06-01 12:10
2009.07.26
cxGrid как SelectedRecordCount на нижнем уровне


15-1242772016
Petr V. Abramov
2009-05-20 02:26
2009.07.26
блин! ну и ТЗ :)


15-1242384513
Kolan
2009-05-15 14:48
2009.07.26
Работа по протоколу VT100