WebElement.click() causes page refresh - c#

I have a <button> element. I call the click() function on this element using chrome webdriver.
appDone = driver.FindElement(By.Id(Constants.APP_DONE));
appDone.Click();
A strange thing happens in chrome, the page actually get reloaded. A pop up comes
"Are you sure you want to leave the page? You have unsaved data" Leave/Stay (buttons)
But same click event works fine in other browsers (Edge, IE, Edge). I opened the console in Chrome before clicking the button and placed debugger. Then executed the button click, the console window goes out a new console window comes up.
Anyone knows why this happens?
Things I have tried so far:
executed the button click using IJavaScriptExecutor
There is an beforeunload event in page, so when I pass onbeforeunload = null, I don't see the page refresh pop up anymore, but page still refreshes.
Tried to add type = button in the button, still no luck.
This screen works fine when run manually without Automation.
I have few logs recorded in server side, so when a page refresh happens, those logs are actually getting deleted, which should not happen.

Related

How to get fresh page after pressing F5 or refresh icon in browser in MVC5 when errors occured?

In my login page,when credentials are wrong ,it gives error.but when i pressed F5 or refresh button in browser,it shows same error page not giving refreshed page.
Hitting F5 causes the form to repost. You cannot by-pass this feature since it's build in every browser.
You can click on the address bar and press enter. This way you will request a new page without form data.
If you want your user to been able to clear the validation errors then provide them with a 'x' button that clear these errors.

closing message keeps showing when close the browser programatically

I am working with just IE
I want to implement a button, when the user clicks it, the browser will close
I did this:
ClientScript.RegisterStartupScript(typeof(Page), "closePage", "<script type='text/JavaScript'>window.close();</script>");
the browser really close, but every time I click that button, I got a message from IE states that the web page will be close, with two options yes, and no.
is there any way to avoid that button?

Selenium Chrome driver click does not work

IWebElement advancedSearchButton = driver.FindElement(By.Id("advanced-search"));
advancedSearchButton.Click();
this code works when the click button is displayed in the chrome driver, but when I resize the chrome to a very small size and the button is not displayed on the browser but it is loaded, click action does not work. When I minimize the chrome, click action works I am confused what to do ? I want to eventually try to make chrome as small as possible to hide the detail from the user kind of trying to run headless with windows C# please help thank you

Browser back button does not work with asp controls

I have a site with few asp:CheckBoxList and asp:DropDownList controls. Checking few options or selecting few items in the dropdowns makes the back button browse to same page just with previous selections. I would like the back button on the browser take the user to the previous website visited. As example: if the last visited site was: default.aspx, then the back button from my current site should go back to default.aspx.
Adding few header options regarding caching only broke the back button to: Page Not Found message.
How can the user browse back to the default.aspx by the first back button clicked on the browser?
Just need to confirm, are u using IE 10 to run the web system?
I had encounter asp control component not working properly when i was using IE 10.
Maybe consider using other browser type like firefox and safari to see if it can work properly

Simulating a button click within ascx page

I need to simulate a button click on my ascx page. The user firstly clicks on a button on the service home page which links to a certain service and a new window opens for that related service. If they are not logged in it directs them to the login page. A querystring is sent with it to keep note of what service they had originally clicked. When the user then logs in they are redirected back to the services page and the querystring of what they clicked on before is sent also.
I have up to this point working fine. The problem is that when I'm redirected back to the online services page I need to simulate an onclick event which will open the new window. I cant click on an the onclick method for the button as there is none, everything is done dynamically. Any ideas?
I would have thought the easiest way to achieve what it sounds like you're trying to do is in the code behind for your Online Services Page check to see whether the query string contains the url for the service they clicked on before you sent them to the login page, if it does then add some javascript to run on start up which launches the pop-up (using the ClientScriptManager.RegisterStartupScript method: http://msdn.microsoft.com/en-us/library/system.web.ui.clientscriptmanager.registerstartupscript.aspx).
If you absolutely have to fire the click event you can also do that from your javascript by finding the button you want to click by it's ClientId (using getElementById) and then calling the javascript click() method on it. Here is an example: http://www.w3schools.com/jsref/met_html_click.asp

Categories

Resources