select_index_by_attribute(attr_name, attr_value, exactly, index,
frame)
Данная команда позволяет выбрать опции с заданным индексом у листбокса, находя
его по заданному значению атрибута или его части.
Команда на вход принимает параметры:
-
attr_name - имя атрибута, значение
которого мы будем искать элемент на странице
-
attr_value - значение атрибута, по
которому мы будем искать элемент на странице
-
exactly - точное соответствие
значения заданного атрибута при поиске элемента
-
index - индекс опции, нумерация
начинается с нуля
-
frame - номер фрейма, в котором мы
ищем элемент. Номер фрейма в котором находится нужный вам элемент можно
узнать из инспектора задач, контекстного меню и панели списка элементов.
Можно передавать вложенные фреймы, принцип такой же самый. Можно передавать
"url=>XXX", тогда будет произведен поиск фрейма, который содержит
заданный src, или передавать "name=>XXX"
После отработки команда возвращает результат своей работы в робот:
-
true - успешно выполнили
-
false - найти такой
элемент не удалось
Примеры использования (php)
<?php $xhe_host = "127.0.0.1:7014";
// подключим объект для управления эмулятором, если еще не подключен
if (!isset($path))
$path="../../../Templates/init.php";
require($path);
// начало
echo "<hr><font color=blue>listbox->".basename (__FILE__)."</font><hr>";
// 1
echo "1. Перейдем на полигон : ";
echo $browser->navigate("http://rbot.biz-apps.ru/poligon/listbox.html")."<br>";
// 2
echo "2. Выберем индекс 3 в элементе с именем contries : ";
echo $listbox->select_index_by_attribute("name","contries",true, 3)."<br>";
// 3
echo "3. Выберем индекс в несуществующем элементе : ";
if(!$listbox->select_index_by_attribute("name","ptych", true,1))
echo "нет такого элемента<br>";
// 4
echo "4. Выберем индекс 3 в элементе с именем contries в нулевом фрейме : ";
echo $listbox->select_index_by_attribute("name","contries",true, 3,0)."<br>";
// 5
echo "5. Выберем индекс в несуществующем элементе в нулевом фрейме : ";
if(!$listbox->select_index_by_attribute("name","ptych", true,1,0))
echo "нет такого элемента<br>";
// 6
echo "6. Выберем индекс в элементе в несуществующем фрейме : ";
if(!$listbox->select_index_by_attribute("name","contries", true,1,100500))
echo "нет такого фрейма<br>";
// конец
echo "<hr><br>";
// Quit
$app->quit();
?>
Примеры использования (cs)
#region using
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Threading;
using XHE;
using XHE.XHE_DOM;
using XHE.XHE_System;
using XHE.XHE_Window;
using XHE.XHE_Web;
#endregion
class Program:XHEScript
{
static void Main(string[] args)
{
// init XHE
server="127.0.0.1:7010";
InitXHE();
// начало
echo("<hr><font color=blue>listbox.select_index_by_attribute</font><hr>");
// 1 шаг
echo("1. Перейдем на полигон : ");
echo(browser.navigate("www.rbot.biz-apps.ru/poligon/listbox.html")+"<br>");
// 2 шаг
echo("2. Выберем индекс 3 в элементе с именем contries : ");
echo(listbox.select_index_by_attribute("name","contries",true, 3)+"<br>");
// 3 шаг
echo("3. Выберем индекс в несуществующем элементе : ");
if(!listbox.select_index_by_attribute("name","ptych", true,1))
echo("нет такого элемента<br>");
// 4 шаг
echo("4. Выберем индекс 3 в элементе с именем contries в нулевом фрейме : ");
echo(listbox.select_index_by_attribute("name","contries",true, 3,"0")+"<br>");
// 5 шаг
echo("5. Выберем индекс в несуществующем элементе в нулевом фрейме : ");
if(!listbox.select_index_by_attribute("name","ptych", true,1,"0"))
echo("нет такого элемента<br>");
// 6 шаг
echo("6. Выберем индекс в элементе в несуществующем фрейме : ");
if(!listbox.select_index_by_attribute("name","contries", true,1,"100500"))
echo("нет такого фрейма<br>");
// конец
echo("<hr><br>");
app.quit();
}
}
Примеры использования (py)
# Additional paths
import sys
sys.path.insert(0, '../../../Templates PY/')
xhe_host = "127.0.0.1:7011"
from xweb_human_emulator import *
# начало
echo("<hr><font color=blue>listbox.xxxxxxxxx</font><hr>")
# 1
echo("1. Перейдем на полигон : ")
echo(browser.navigate("http://www.rbot.biz-apps.ru/poligon/listbox.html"),"<br>")
# 2
echo("2. Выберем индекс 3 в элементе с именем contries : ")
echo(listbox.select_index_by_attribute("name","contries",true, 3),"<br>")
# 3
echo("3. Выберем индекс в несуществующем элементе : ")
if not listbox.select_index_by_attribute("name","ptych", true,1):
echo("нет такого элемента<br>")
# 4
echo("4. Выберем индекс 3 в элементе с именем contries в нулевом фрейме : ")
echo(listbox.select_index_by_attribute("name","contries",true, 3,0),"<br>")
# 5
echo("5. Выберем индекс в несуществующем элементе в нулевом фрейме : ")
if not listbox.select_index_by_attribute("name","ptych", true,1,0):
echo("нет такого элемента<br>")
# 6
echo("6. Выберем индекс в элементе в несуществующем фрейме : ")
if not listbox.select_index_by_attribute("name","contries", true,1,100500):
echo("нет такого фрейма<br>")
# конец
echo("<hr><br>")
# Quit
app.quit()
Примеры использования (js)
// подключим объект для управления эмулятором, если еще не подключен
xhe_host="127.0.0.1:7010";
echo=require("../../../Templates JS/init.js");
// начало
echo("<hr><font color=blue>listbox.select_index_by_attribute</font><hr>");
// 1 шаг
echo("1. Перейдем на полигон : ");
echo(browser.navigate("http://www.rbot.biz-apps.ru/poligon/listbox.html")+"<br>");
// 2 шаг
echo("2. Выберем индекс 3 в элементе с именем contries : ");
echo(listbox.select_index_by_attribute("name","contries",true, 3)+"<br>");
// 3 шаг
echo("3. Выберем индекс в несуществующем элементе : ");
if(!listbox.select_index_by_attribute("name","ptych", true,1))
echo("нет такого элемента<br>");
// 4 шаг
echo("4. Выберем индекс 3 в элементе с именем contries в нулевом фрейме : ");
echo(listbox.select_index_by_attribute("name","contries",true, 3,0)+"<br>");
// 5 шаг
echo("5. Выберем индекс в несуществующем элементе в нулевом фрейме : ");
if(!listbox.select_index_by_attribute("name","ptych", true,1,0))
echo("нет такого элемента<br>");
// 6 шаг
echo("6. Выберем индекс в элементе в несуществующем фрейме : ");
if(!listbox.select_index_by_attribute("name","contries", true,1,100500))
echo("нет такого фрейма<br>");
// конец
echo("<hr><br>");
// Quit
app.quit();