Главная страница
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.031 c
2-1243397495
Алексей Иванов
2009-05-27 08:11
2009.07.26
Свойство TTreeView.Parent


15-1243262430
Unknown user
2009-05-25 18:40
2009.07.26
быстрый TTreeView


2-1243871211
Максим
2009-06-01 19:46
2009.07.26
TPopUpMenu + WM_COMMAND


3-1224149989
tomkat
2008-10-16 13:39
2009.07.26
Не работает TIBDataSet в службе.


2-1243865113
Midi
2009-06-01 18:05
2009.07.26
эмулятор миди порта