Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript取消选择css样式?_Javascript_Jquery_Css_Selenium_Selenium Webdriver - Fatal编程技术网

如何使用javascript取消选择css样式?

如何使用javascript取消选择css样式?,javascript,jquery,css,selenium,selenium-webdriver,Javascript,Jquery,Css,Selenium,Selenium Webdriver,我正在使用selenium自动化一些网站。有一个多普敦让我很难过,因为它不是本地的,因为他们使用了一些定制设计的。所以我需要将它的css类设置为hidden,这样我就可以轻松地访问本机类 这是在我点击它之前: 这是在: 那么现在我如何用js自动完成它呢?我试过这样的方法,但不起作用: var js:JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor] js.executeScript("$('.selectpick

我正在使用selenium自动化一些网站。有一个多普敦让我很难过,因为它不是本地的,因为他们使用了一些定制设计的。所以我需要将它的css类设置为hidden,这样我就可以轻松地访问本机类

这是在我点击它之前:

这是在:

那么现在我如何用js自动完成它呢?我试过这样的方法,但不起作用:

 var js:JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor]
    js.executeScript("$('.selectpicker select').removeClass('bs-select-hidden')") 

感谢您使用了错误的CSS选择器:“.selectpicker select”表示“具有selectpicker类的元素的SelectElements子元素”

您希望select元素具有selectpicker类

执行以下javascript:

$('select.selectpicker').show();
它将在该元素上设置“显示:块”,并且它将可见

编辑 从选择器选择器文档()。 隐藏自定义选项,选择并显示本机选项。 由于选择有
显示:无!重要信息
我们需要强制它显示

有三种方法:

  • 删除使其隐藏的特定类“selectpicker”和“bs select hidden”

    $('select.selectpicker').selectpicker('hide')
                            .removeClass("selectpicker bs-select-hidden");
    
  • 删除所有类(可能会破坏布局)

  • 强制显示:内联块(选择的默认显示值)


您可以简单地将elements类设置为nothing

document.getElementById("whatever").className = "";
或者如果你想保留一个特定的类,你可以重新设置这个类

document.getElementById("whatever").className = "";
document.getElementById("whatever").className = "classToKeep";
检查这个

或者如果您使用jquery

$( "id/class" ).removeClass( "blue under" );

它不起作用了……什么也没发生。只是为了确保,我想隐藏非本机下拉列表:)但你也想显示本机下拉列表吗?是的,我想,但你给我的这个命令对此无效:/你能给我们一个url来测试吗?我希望我可以,它是我为系统工作的comp,它有一个用户名和pass的登录名。我能为你提供任何信息吗。。?我想从截图中你可以理解我使用了jquary,但这不起作用…$(“id/class”)。removeClass(“蓝色下方”)选中此选项,你不应该试图强制更改类。您应该像用户那样与页面交互。硒就是这样设计的。用户将如何更改类?
document.getElementById("whatever").className = "";
document.getElementById("whatever").className = "classToKeep";
$( "id/class" ).removeClass( "blue under" );