Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I execute a script after calling window.location.href?

Tags:

I have a script that redirects the user to another page. I want to load some content into a div on the new page after the new page has fully loaded. How can I do this. The following doesn't work.

function goToPage() {     window.location.href = 'http://www.mypage.com/info';     $('.my_class').load('my/url/path/with/content/to/load'); } 

The newly loaded page http://www.mypage.com/info contains the following div:

<div class="my_class"></div> 

What am I doing wrong?

like image 778
Stephanie Caldwell Avatar asked Aug 04 '13 22:08

Stephanie Caldwell


People also ask

What happens after window location href?

window.location.href returns the href (URL) of the current page. window.location.hostname returns the domain name of the web host. window.location.pathname returns the path and filename of the current page.

How do you pass data using Windows location href?

Using window. location. href it's not possible to send a POST request. What you have to do is to set up a form tag with data fields in it, set the action attribute of the form to the URL and the method attribute to POST, then call the submit method on the form tag.

What does location href do in Javascript?

The location. href property sets or returns the entire URL of the current page.


1 Answers

Redirect to the new page, but append a hash signal to the URL.

function goToPage() {     window.location.href = 'http://www.mypage.com/info#load-stuff; } 

Then on load of the target page, evaluate the URL checking for that hash signal.

function pageLoad() {     if (window.location.hash === "#load-stuff") {         $('.my_class').load('my/url/path/with/content/to/load');     } } 

If your application is using jQuery it'd look something like:

$(function () {     if (window.location.hash === "#load-stuff") {         $('.my_class').load('my/url/path/with/content/to/load');     } }); 

That's the rough idea at least.

like image 57
Tombatron Avatar answered Nov 04 '22 00:11

Tombatron