Каждый раз, когда идентификатор запроса изменяется при выборе поля обновления в реальном времени.Невозможно найти элемент с помощью xpath для полей постоянного обновления
Am пытается получить идентификатор запроса через XPath
Это исходный код.
<form id="itemscreen334-33504-" class="itemscreen addMode v_334 ajaxForm form-initialized" method="POST" enctype="multipart/form-data" requestid="18310" style="visibility: visible; opacity: 1;">
Java код:
WebElement form = driver.findElement(By.xpath("//form[Class='itemscreen addMode v_334 ajaxForm form-initialized')]"));
System.out.println("form-->" + form);
String requestNo = form.getAttribute("requestid");
System.out.println("requestNo----------->" + requestNo);
Селен Ошибка:
Exception in thread "main" org.openqa.selenium.InvalidSelectorException: The given selector //form[Class='itemscreen addMode v_334 ajaxForm form-initialized')] is either invalid or does not result in a WebElement. The following error occurred: InvalidSelectorError: Unable to locate an element with the xpath expression //form[Class='itemscreen addMode v_334 ajaxForm form-initialized')] because of the following error: [Exception... "The expression is not a legal expression." code: "12" nsresult: "0x805b0033 (SyntaxError)" location: ""]
Как я могу получить идентификатор запроса, используя XPath?
Одна проблема в вашем XPath является то, что вы имеете 'форму [Class' вместо' форме [@ class', но вы лучше использовать селектор CSS, как в ответ ниже. Это более гибко. – JeffC