How to force a postback with asp.net and C#

佐手、 提交于 2019-12-06 03:45:34

问题


I have a demo scheduled with a client and i need a quick and dirty fix for now. I will find a more appropriate work around tomorrow but for the time being i need a way to force a post back, or refresh the page.

i tried:

Response.Redirect("");

but it brings me to a page that says "Object moved to here". 'here' is a hyperlink that brings me to the page with desired results but i wish to bypass this message.

Any ideas.


回答1:


Response.Redirect("default.aspx");

(or whatever the name of the current page is)




回答2:


Response.Redirect() is not the greatest because there is not state. It's a new request. if you want to keep state of all your controls then use the __doPostBack method which is added automatically by ASP when the page is rendered so it's accessible from client side:

you can do this:

or just call it from javascript:

__doPostBack('myElementId','');

Alternatively you can just use javascript code:

document.forms[0].submit();




回答3:


Response.Redirect(Request.RawURL); 

This also works and you won't need to worry about putting in the path.




回答4:


Couldn't you just add a javascript block with window.reload() in it?

Here is some useful info on how to do this correctly in Web Forms.




回答5:


The server can not tell the client to reload.

You can use the html meta refresh:

 <meta http-equiv="refresh" content="2;url=http://the.new.url">

but that will not do a proper post back i think.

Content is how many seconds the client waits to do the refresh.




回答6:


Take a look at ASP.NET AJAX Timer Control! http://www.asp.net/ajax/documentation/live/tutorials/IntroToTimerControl.aspx




回答7:


Do you need a post back to populate a list? Did you look into if solving it with Ajax could help??

Or if you just need a quick and dirty thing, just fake it and fix it later.



来源:https://stackoverflow.com/questions/1418532/how-to-force-a-postback-with-asp-net-and-c-sharp

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!