shuka
shuka

Reputation: 135

jQuery getJSON url

I am setting up a twitter feed into my site and have it working perfectly when you access it with a root page ie www.domain.com/index.php

However when you have a url that is www.domain.com/category/page it doesn't not work, however if you use www.domain.com/index.php?cat=category&page=page it works fine.

So in the javascript I have the following

jQuery(function() {
    jQuery.getJSON('cache/twitter-json.txt', function(data){
    jQuery.each(data, function(index, item){
    jQuery('#tweet').append('code for displaying tweet');
});
});

So I have tried to change the url in the getJSON function to the full path www.domain.com/cache/twitter-json.txt but that doesn't work.

Upvotes: 2

Views: 7629

Answers (3)

steven
steven

Reputation: 4875

Maybe it helps to set the base in your html

<base href="http://myserver/dir1/">

Upvotes: -1

Barmar
Barmar

Reputation: 780688

Try:

jQuery.getJSON('/cache/twitter-json.txt', function(data){

Relative URLs are interpreted relative to the directory of the page containing the reference. So when you make the above call from www.domain.com/category/page, it tries to go to www.domain.com/category/cache/twitter-json.txt.

If you want to use the full URL, you need to put // before the hostname, e.g.

jQuery.getJSON('//www.domain.com/cache/twitter-json.txt', function(data){

Otherwise, it thinks www.domain.com/ is just another level of directory.

Upvotes: 8

Orangepill
Orangepill

Reputation: 24645

change

jQuery.getJSON('cache/twitter-json.txt', function(data){

to

jQuery.getJSON('/cache/twitter-json.txt', function(data){

Upvotes: 2

Related Questions