如何点击提交按钮

时间:2015-09-25 09:54:41

标签: selenium xpath submit form-submit submit-button

如何点击给定html上的提交按钮

<span class="sbt-btn-wrap relative">
<input class="submit icon" type="submit" onclick="submitmnLogin($(this), 'testPrepLogin');trackGaEvent('Content Hub Home','Login Popup','Login Button');">

我试过了

driver.findElement(By.className("sbt-btn-wrap relative")).click();

driver.findElement(By.className("submit icon")).click();

但它不起作用。

5 个答案:

答案 0 :(得分:3)

如果有两个类名,空格将它们分开,那么就不能在其上使用By.className。而是使用By.cssSelector单击元素。这是怎样的 -

driver.findElement(By.cssSelector(".submit.icon")).click();

如果您仍想使用className,请使用该元素唯一的类名并单击它 -

driver.findElement(By.className("submit")).click();

您可以使用其他属性单击输入元素。我更喜欢使用cssSelector而不是xpath作为它的慢 -

driver.findElement(By.cssSelector("input[type='submit']")).click();

这里也是xpath的一个例子 -

driver.findElement(By.xpath("//input[@type='submit']")).click();

如果您无法以独特的方式找到提交按钮元素,则使用其他唯一元素来查找输入元素。

driver.findElement(By.cssSelector(".sbt-btn-wrap relative .submit")).click();

希望它有所帮助。

答案 1 :(得分:0)

有几种方法可以使用此HTML代码作为按钮

<input type="button" id="btn_submit" class="some_class" value="Submit">

并使用以下jquery代码(您必须在页面上包含jquery!)

$('#btn_submit').click(function() {
    alert( "Handler for .click() called." );
});

或者使用jquery执行相同的操作,但是使用类而不是ID来处理单击(仅当您想要在多个元素上处理相同时才推荐)

$('.some_class').click(function() {
    alert( "Handler for .click() called." );
});

现在使用ID的javascript,不需要包含jquery库

function myFunction() {
    document.getElementById("btn_submit").click(); // Click on the checkbox
}

通过css

driver.findElement(By.cssSelector(".some class)).click();

希望这是你想要的,这对你有帮助。 检查您问题的第一条评论

答案 2 :(得分:0)

您可以通过使用List Web元素

的CSSSelector帮助实现此目的
String cssSelectorOfButton="input[type='button'][id='login']"; 
//****Add cssSelector of your button webelement
List<WebElement> loginButton 
=driver.findElements(By.cssSelector(cssSelectorOfButton));
loginButton.get(0).click();

答案 3 :(得分:-1)

.click()替换为.submit(),它可能会有效。您可以使用HTML表单。

答案 4 :(得分:-1)

import tweepy
   
def searchtweet():
    twitter_auth_keys = {
        "consumer_key": "yours goes here",
        "consumer_secret": "yours goes here",
        "access_token": "yours goes here",
        "access_token_secret": "yours goes here"
    }
  

    auth = tweepy.OAuthHandler(
        twitter_auth_keys['consumer_key'],
        twitter_auth_keys['consumer_secret']
    )
    auth.set_access_token(
        twitter_auth_keys['access_token'],
        twitter_auth_keys['access_token_secret']
    )

    api = tweepy.API(auth)

    print(api.statuses_lookup(["INSERT YOUR SEARCH TWEET ID HERE"]))

def main():
    searchtweet()

尝试一下,它对我有用