如何检查类属性是否包含某些内容

本文关键字:包含某 是否 属性 何检查 检查 | 更新日期: 2023-09-27 18:31:57

我有两个按钮,后退和下一个:

   By.XPath("/html/body/div/div[3]/main/div/div/form/div[1]/div[2]/div[1]/nav/div/button[1]")
   By.XPath("/html/body/div/div[3]/main/div/div/form/div[1]/div[2]/div[1]/nav/div/button[2]")

第一个转到上一页,第二个转到列表的下一页。当我打开我的页面时,第一个按钮将被禁用,直到我到达另一个页面,或者如果我的列表很短或 emty,这两个按钮都将被禁用。如果没有禁用这些按钮,我需要单击它们。只有禁用和不禁用之间的区别是类属性:

class="disabled btn btn-plain btn-default-hover"
class="btn btn-plain btn-default-hover"

那么如何检查按钮类是否包含"禁用"呢? 场景是这样的 - 如果第二个按钮处于活动状态,请单击"下一步",然后如果第一个按钮处于活动状态,请单击"返回"

如何检查类属性是否包含某些内容

//el is the web element
if(el.getAttribute("class").split(" ").contains("disabled"))
{  
    //your code
}

假设您有两个ID为"button1"和"button2"的按钮。

你可以用这样的东西来检查:

if(document.getElementById("button1").className.indexOf("disabled") > 1) {
  // what to do if disabled...
} else {
  // what to do if active...
}

当然,您可以对另一个按钮执行相同的操作...

通过使用jquery编写以下代码

var ClassAtttr = $("#YourElementId").attr("class");
 if (ClassAtttr.indexOf('Your Expression'))
 {
   //do somthing
 }

为什么不试试'.已启用'

WebElement backButton = driver.FindElement('Your Locator');
if(backButton.Enabled)
{
  'Your action to be performed
}