127865ghbjbkjj" /> 127865ghbjbkjj" /> 127865ghbjbkjj"/>

How to get value of Hidden Field in Selenium or JavaScript?

1.1k Views Asked by At

I have scenario to get value of Hidden field which has <p> tag in my Page using Selenium.

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

I have tried below code

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

Can anyone help me how to get the value "127865ghbjbkjjk776876876876" inside P tag

1

There are 1 best solutions below

0
dpfauwadel On

sometimes, the hidden field is not completely rendered when you test it with selenium.

I made a loop to test it

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; 
        }

You will have to replace "value" with "text" or "innerHTML".