get_selected_index_by_attribute

get_selected_index_by_attribute(attr_name, attr_value, exactly, frame)
Данная команда позволяет получить индекса выбранной опции у листбокса на текущей странице, находя его по заданному значению атрибута.
Команда на вход принимает параметры:
  • attr_name - имя атрибута, значение которого мы будем искать элемент на странице
  • attr_value - значение атрибута, по которому мы будем искать элемент на странице
  • exactly - точное соответствие значения заданного атрибута при поиске элемента
  • frame - номер фрейма, в котором мы ищем элемент. Номер фрейма в котором находится нужный вам элемент можно узнать из инспектора задач, контекстного меню и панели списка элементов. Можно передавать вложенные фреймы, принцип такой же самый. Можно передавать "url=>XXX", тогда будет произведен поиск фрейма, который содержит заданный src, или передавать "name=>XXX" - тогда будет поиск фрейма, по заданной части имени
После отработки команда возвращает результат своей работы в робот:
  • индекс выбранной опции - возвращает индекс выбранной опции в листбоксе, нумерация опций начинается с нуля.
  • -1 - нет выбранной опции



Примеры использования (php)

<?php $xhe_host = "127.0.0.1:7094";
 
// подключим объект для управления эмулятором, если еще не подключен
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. Получим выбранный индекс элемента с именем hero[] : ";
echo $listbox->get_selected_index_by_attribute("name","hero[]",true)."<br>";
 
// 3 
echo "3. Получим выбранный индекс несуществующего элемента : ";
if ($listbox->get_selected_index_by_attribute("name","ptych",true)==-1)
	echo "нет такого элемента<br>";
 
// 4 
echo "4. Получим выбранный индекс элемента с именем hero[] в нулевом фрейме : ";
echo $listbox->get_selected_index_by_attribute("name","hero[]",true,0)."<br>";
 
// 5 
echo "5. Получим выбранный индекс несуществующего элемента в нулевом фрейме: ";
if ($listbox->get_selected_index_by_attribute("name","ptych",true,0)==-1)
	echo "нет такого элемента<br>";
 
// 6 
echo "6. Получим выбранный индекс элемента в несуществующем фрейме: ";
if ($listbox->get_selected_index_by_attribute("name","hero[]",true,100500)==-1)
	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.get_selected_index_by_attribute</font><hr>");
 
			// 1 шаг
			echo("1. Перейдем на полигон : ");
			echo(browser.navigate("www.rbot.biz-apps.ru/poligon/listbox.html")+"<br>");
 
			// 2 шаг
			echo("2. Получим выбранный индекс элемента с именем hero[] : ");
			echo(listbox.get_selected_index_by_attribute("name","hero[]",true)+"<br>");
 
			// 3 шаг
			echo("3. Получим выбранный индекс несуществующего элемента : ");
			if (listbox.get_selected_index_by_attribute("name","ptych",true)==-1)
				echo("нет такого элемента<br>");
 
			// 4 шаг
			echo("4. Получим выбранный индекс элемента с именем hero[] в нулевом фрейме : ");
			echo(listbox.get_selected_index_by_attribute("name","hero[]",true,"0")+"<br>");
 
			// 5 шаг
			echo("5. Получим выбранный индекс несуществующего элемента в нулевом фрейме: ");
			if (listbox.get_selected_index_by_attribute("name","ptych",true,"0")==-1)
				echo("нет такого элемента<br>");
 
			// 6 шаг
			echo("6. Получим выбранный индекс элемента в несуществующем фрейме: ");
			if (listbox.get_selected_index_by_attribute("name","hero[]",true,"100500")==-1)
				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. Получим выбранный индекс элемента с именем hero[] : ")
echo(listbox.get_selected_index_by_attribute("name","hero[]",true),"<br>")
 
# 3 
echo("3. Получим выбранный индекс несуществующего элемента : ")
if listbox.get_selected_index_by_attribute("name","ptych",true)==-1:
	echo("нет такого элемента<br>")
 
# 4 
echo("4. Получим выбранный индекс элемента с именем hero[] в нулевом фрейме : ")
echo(listbox.get_selected_index_by_attribute("name","hero[]",true,0),"<br>")
 
# 5 
echo("5. Получим выбранный индекс несуществующего элемента в нулевом фрейме: ")
if listbox.get_selected_index_by_attribute("name","ptych",true,0)==-1:
	echo("нет такого элемента<br>")
 
# 6 
echo("6. Получим выбранный индекс элемента в несуществующем фрейме: ")
if listbox.get_selected_index_by_attribute("name","hero[]",true,100500)==-1:
	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.get_selected_index_by_attribute</font><hr>");
 
// 1 шаг
echo("1. Перейдем на полигон : ");
echo(browser.navigate("http://www.rbot.biz-apps.ru/poligon/listbox.html")+"<br>");
 
// 2 шаг
echo("2. Получим выбранный индекс элемента с именем hero[] : ");
echo(listbox.get_selected_index_by_attribute("name","hero[]",true)+"<br>");
 
// 3 шаг
echo("3. Получим выбранный индекс несуществующего элемента : ");
if (listbox.get_selected_index_by_attribute("name","ptych",true)==-1)
	echo("нет такого элемента<br>");
 
// 4 шаг
echo("4. Получим выбранный индекс элемента с именем hero[] в нулевом фрейме : ");
echo(listbox.get_selected_index_by_attribute("name","hero[]",true,0)+"<br>");
 
// 5 шаг
echo("5. Получим выбранный индекс несуществующего элемента в нулевом фрейме: ");
if (listbox.get_selected_index_by_attribute("name","ptych",true,0)==-1)
	echo("нет такого элемента<br>");
 
// 6 шаг
echo("6. Получим выбранный индекс элемента в несуществующем фрейме: ");
if (listbox.get_selected_index_by_attribute("name","hero[]",true,100500)==-1)
	echo("нет такого фрейма<br>");
 
// конец
echo("<hr><br>");
 
// Quit
app.quit();