Web Forms :: Scroll Page To The Position Where Validation Errors Occur?
Jul 29, 2010
I have serveral long ASP.Net pages, I use RequiredFieldValidator, RegularExpressionValidator and ValidatorCalloutExtender for validations, Submit buttons are typically at the bottom of the pages. The problem I have: if the errors happen at the top portion of the page when Submit buttons are clicked, the forms do not scroll to the top automatically, the users have to scroll up to see the ValidatorCalloutExtender.
I've got an ASP.NET webform with asp:TextBox and asp:RequiredFieldValidator at the bottom of the page. If client side validation fails on form submit - the page scrolls all the way up.
I'd like to maintain the scroll position on failed client-side validation.
I'm having trouble with an image button I create via c# in an event causing page validation to occur on postback. The CausesValidation attribute is set to false at time of creation in the event. I also wire up the Click event in the page_init with postback so not to loose the event handler if the page posts another way. Here is the code I'm using in the click event of a Button. I've also tried to enable and disable viewstate for the button with no luck. What am I missing here that continues to fire page validation in the Click of this imagebutton?
I want to maintain the scroll position of a page. So I try to get the page cordinates and set the position on the page load (actually I've a postback in my page) using JS as follows. What I've done is on a client click on an image get the page cordinates and keep in a hidden field.
[Code]....
GetScollerPosition function invoke in an image click event. But it's not work as I expected, the SetScrollPostion always find the value of hidden fields as zero.
I am trying to use an anchor tag to automatically scroll down to "position1" when the page loads.
I have created this name tag in the .aspx page and then trying to redirect to that tag in the page_load event but this results in that the page doesn´t load at all and cant be seen in the browser:
I have some collapse able anhcor link tags on a page that reveal some text when clicked on i.e.: [+] Topic This is all done in javascript client side. I would like to maintain the users scroll position on the page when these links are clicked on. They dont cause a postback as iv mentioned above its client side javascript.
I use pagination for my datalist according to this link [URL].....
this is style of pagination
First 1,2,3,4,5 Last
when i run web site i see my datalist with pagination in webpage my datalist is middle of page when i click on page number 2 or 3 to see other page of datalist it reload page and go to top of page i should scroll until I can see my datalist again.
i want when users click on page number after that they see other page of datalist directly not top of page ..
i am using asp.net 4.0 iis 7.5 microsoft visual studio 2010
what i want is keep whole page (browser) scroll position (not a div or panel) when asynchronous postback happened (update panel) how can i do this actually i had a function which can keep div scroll bar position after postback like this
<script type="text/javascript"> var xPos, yPos; var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_beginRequest(BeginRequestHandler); prm.add_endRequest(EndRequestHandler); function BeginRequestHandler(sender, args) { xPos = document.getElementById('Main').scrollLeft; yPos = document.getElementById('Main').scrollTop; } function EndRequestHandler(sender, args) { document.getElementById('Main').scrollLeft = xPos; document.getElementById('Main').scrollTop = yPos; } </script>
bu i could not find browser scroll bar id to get its values to get with document.getElementById
Can I save a page position in browser after clicking button or some other actions (after PostBack)
I need it on Page Change event in my DBGrid like on msdn.microsoft.com - when I change Tab C# -> C++ for example it doesn't refresh whole page and I still being on same position in browser.
i used the dropdown list in user control.when i select the dropdownlist that scroll bar went to top.how can i maintain the scroll bar position in that situation?
I have found many articles claiming to show you how to set the scroll position of a ListBox, but what they really end up showing you is how to set the SelectedIndex of a ListBox.
Here is what I need: a databound ListBox that's usually going to have around 25 items in it. When the page loads, ALL of the items in the ListBox are selected, and the ListBox is scrolled all the way to the bottom.
I've got the "All items Selected" requirement already, but I can't figure out how to get the "Scroll to the bottom" done.
I have a page that uses AJAX updatepanels. On this page, we have some radio buttons with Autopostback set to true. The problem is that after the postback, the control was losing focus so that when the user would hit tab, control would be restored to the first control on the page and not the drop-down which fired the event. As a fix, I wrote some set focus code in the radio button's oncheckchanged event. This seems to have fixed the problem with the focus. The problem I have is that the browser loses its scroll position every time I click on one of these radiobuttons. Is there a way to maintain scroll position? Maybe there is another way to resolve my original problem of setting focus that will prevent this from happening.
I have this working in several pages in my site but in one page it wont work!
this is the hierarchyof the page.
I have a treeview in a div,in an asp:panel, in an updatepanel in a user control. the panel is shown/hidden using the ajax modalpopupextender.
this user control is placed in a content page (using a master page).
Now that you got the above, I'll let you know what ive tried already.
I tried doing this:(which works perfectly when the treeview is placed simply in an aspx page)
[Code]....
tried using also :
[Code]....
Basically i kept playing around with it trying different ways but seems like the selected node is just not visible even though i call this JS function after i have selected the Node in code behind.
I have a multiview control on a page with multiple child view controls. As the ActiveViewIndex is changed when I nagivate between views, I'd like to reposition the scroll position of the browser. For instance, when toggling between a very long page with a huge gridview (page 1) and a smaller page that follows (page 2), I'd like my scroll position to start back at the top of the page when I navigate to the smaller page. Currently, if I scroll down on Page 1 and select an item that navigates me forward to page 2, the scroll position is maintained and I start too far down the page when Page 2 displays. I have programatically set MaintainScrollPosition to false on Page_Load so this should not be a factor.
I have got the gridview to populate from my own datatable and there are quite a few results in the table. As a result I have a scroll bar on my gridview.
If there is only a few results the gridview works perfectly, however; When I select a row further down in the scroll it selects and highlights but refreshes the view to the top of the gridview.
I have implemented the "slimScroll" in a div. Prior to this implementation, I was using the asp.net inherent scrolling and was able to use the Maintain Scroll PositionOnPostback="true" at the Page level and that worked well; but now, this no longer works.Â
I am building an application using masterpages, one of the pages contains dynamic gridviews with textboxes using templates. The textboxes have the autopostback enables to allow the calculation of the numeric values entered in each row.
The grid has 3 cols (3rd col has the total of the first and sec cols) the problem is that when i change the textbox (therefore a postback is created) the page scrolls up.
I tried the Page.MaintainScrollPositionOnPostBack = True but it does not work. Can i use any other method to solve this poblem.?
I have an asp.net c# web forms application with a formview. Â When I click "Edit" on the formview, I have set the focus to a textbox. Â This works just fine. Â
The problem is that the textbox is at the bottom of the screen. Â I want to set focus on the textbox and also have it move (scroll) to the top of the screen. Â This will allow the user to see the entire form, withhout having to scroll initially. Â
How can I modify the code to set the textbox (pol_numTextBox) at the top of the page on DataBound once the focus is set?
I have an asp.net listbox with 15 rows and auto postback when the selected item is changed. This works as expected but, when the form is re-loaded, IE scrolls the list so that the last selected item is now the top visible item in the list. This produces a confusing/jumpy effect for the users and makes the listbox more difficult to use than it needs to be.
Is there any way to get the list scroll position to stay as it was before the postback? i.e, if I select an item from the middle of the listbox, the listbox is scrolled to the same point after postback.
To prevent it, i tried implementing following javascript code by user Sun Rays:
<script type="text/javascript"> window.onload = function () { var strCook = document.cookie; if (strCook.indexOf("!~") != 0) { var intS = strCook.indexOf("!~"); var intE = strCook.indexOf("~!"); var strPos = strCook.substring(intS + 2, intE); document.getElementById("divGvIncidentDetail").scrollTop = strPos; } } function SetDivPosition() { var intY = document.getElementById("divGvIncidentDetail").scrollTop; document.title = intY; document.cookie = "yPos=!~" + intY + "~!"; } </script>
I get the following error when i run the code: Microsoft JScript runtime error: 'document.getElementById(...)' is null or not an object Am i missing something? or is there any other better solution to maintain the scroll position