【问题标题】:How to get value of Hidden Field in Selenium or JavaScript?如何在 Selenium 或 JavaScript 中获取隐藏字段的值?
【发布时间】:2017-03-22 19:19:03
【问题描述】:

我有场景使用 Selenium 在我的页面中获取具有 <p> 标记的隐藏字段的值。

<p hidden="" aria-hidden="true" id='hiddenid'>127865ghbjbkjjk776876876876</p>

我试过下面的代码

1. String interactionid=NewVerificationModal.InteractionId.getText(); i got Blank value 
2. String isChecked = (String) js.executeScript("return arguments[0].textContent", NewVerificationModal.InteractionId);, i got nullpointerException 
3. String isChecked = (String) js.executeScript("return document.getElementById('hiddenInteractionId').innerHTML;");,i got Nullpointer exception

谁能帮我在P标签中获取"127865ghbjbkjjk776876876876"的值

【问题讨论】:

    标签: hiddenfield


    【解决方案1】:

    有时,当您使用 selenium 测试隐藏字段时,它并没有完全呈现。

    我做了一个循环来测试它

    By hiddenInputId = By.Id("hiddenReportID");
            if (hiddenInputId == null)
                Assert.True(false, "Cannot find hiddenReportID");
    
            IWebElement hiddenInputIdElement = driver.FindElement(hiddenInputId);
            string hiddenInputIdValue = string.Empty;
            int numberTest = 10;
            for(int i = 0; i < numberTest; i++)
            {
                hiddenInputIdElement = driver.FindElement(hiddenInputId);
                hiddenInputIdValue = hiddenInputIdElement.GetAttribute("value");
                var test = driver.ExecuteJavaScript<string>("return arguments[0].value", hiddenInputIdElement);
                if (string.IsNullOrEmpty(hiddenInputIdValue))
                    Thread.Sleep(200);
                else
                    break; 
            }
    

    您必须将“value”替换为“text”或“innerHTML”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-20
      • 1970-01-01
      • 2014-03-16
      相关资源
      最近更新 更多