- Регистрация
- 23.02.2012
- Сообщения
- 171
- Благодарностей
- 28
- Баллы
- 28
Всем привет!
Нужна помощь с шаблоном...
Уровень с# у меня -1
в общем есть DOM 1977 строек с тэгом option
Шаблон есть но очень медленно работает....
вот код C# что нашел на форуме и как смог поправил
оно работает но выбирает не по value, а как я понял по порядковому номеру который скорее всего формируется при парсинге т к скажем если переменная
sotrydn=2 то он выберет Фамилию <option value="10" data-select2-id="15">*рх***ов И**рь О**ич</option>
Подскажите плз как поправить...
Почему то стандартными методами zenno я вообще эти поля выбрать не могу....
select вижу а как option выбрать неполучается...
Нужна помощь с шаблоном...
Уровень с# у меня -1
в общем есть DOM 1977 строек с тэгом option
Шаблон есть но очень медленно работает....
HTML:
<div class="form-group row">
<label class="col-3 col-form-label" for="staff-id">Сотрудник</label>
<div class="col-9">
<select class="form-control select2-hidden-accessible" id="staff-id" name="staff-id" data-select2-id="staff-id" tabindex="-1" aria-hidden="true">
<option value="0" data-select2-id="2">Нет</option>
<option value="10" data-select2-id="15">*рх***ов И**рь О**ич</option>
<option value="2" data-select2-id="16">**ышев Ко***нтин С***вич</option>
<option value="55" data-select2-id="17">**лт**в **иль Ол**вич</option>
<option value="44" data-select2-id="18">***в ***тин ***вич</option>
<option value="500" data-select2-id="19">***сов Ма***м Ни**вич</option>
<option value="648" data-select2-id="20">***ников ***андр Ва***ьевич</option>
<option value="725" data-select2-id="21">***ина **на Ф**вна</option>
</select>
<span class="select2 select2-container select2-container--default select2-container--below" dir="ltr" data-select2-id="1" style="width: auto;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox" aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-staff-id-container"><span class="select2-selection__rendered" id="select2-staff-id-container" role="textbox" aria-readonly="true" title="Нет">Нет</span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span></div>
</div>
C#:
//Random rnd = new Random();
//string kat = project.Variables["kategoriya"].Value;
int sotrydn = int.Parse(project.Variables["ID_sotrydnika"].Value);
HtmlElement he = instance.ActiveTab.MainDocument.FindElementById("staff-id");
HtmlElementCollection all_elements = he.FindChildrenByXPath(".//option");
if (all_elements.Count > 0) {
// удаляем атрибут selected со старого элемента
foreach (HtmlElement he_opt in all_elements) {
if (he_opt.OuterHtml.IndexOf("selected") != -1) {
he_opt.RemoveAttribute("selected");
}
}
// int he_rnd = rnd.Next(0, all_elements.Count);
HtmlElement he_option = all_elements.Elements[sotrydn];
// Вариант 1:
he_option.SetAttribute("selected", "selected");
he_option.RiseEvent("onchange", "Full");
// Вариант 2: (раскоментировать его и закомментировать предыдущий)
//he.SetAttribute("selecteditems", he_option.InnerHtml);
}
sotrydn=2 то он выберет Фамилию <option value="10" data-select2-id="15">*рх***ов И**рь О**ич</option>
Подскажите плз как поправить...
Почему то стандартными методами zenno я вообще эти поля выбрать не могу....
select вижу а как option выбрать неполучается...