2014-11-08 6 views
0

У меня возникли проблемы с передачей моих переменных из одной функции в document.ready, чтобы я мог вставлять в свой HTML.Передать переменную JQuery из функции в document.ready

Если я определяю расстояние за пределами текущей функции displayContent, то он работает, но я не могу получить значение изнутри этой функции в document.ready. Я попытался обернуть свою функцию displayContent внутри document.ready, но это тоже не сработало.

Мой код в настоящее время:

<script type="text/javascript"> 
var distance; 

function displayContent(json) { 
     var len = json.feed.entry.length; 
     var distance = json.feed.entry[0].gsx$todaydist.$t; 
     var calso = json.feed.entry[0].gsx$todaycalso.$t; 
     var calsi = json.feed.entry[0].gsx$todaycalsi.$t;    
} 


    $(document).ready(function() { 
      $(".distance").html(distance) 
}); 
</script> 
+0

И как вы получаете JSON и вызов функции , кажется, что вы должны вызвать функцию в DOM ready handler и вернуть результат или что-то еще? – adeneo

+0

Похоже, вы не вызывали функцию ** displayContent() ** перед установкой ее значения ** $ (". Distance"). Html (расстояние) ** –

ответ

1

Мое первое впечатление, что вы объявили переменную расстояния в два раза, а не объявив его и назначение

<script type="text/javascript"> 
var distance; 

function displayContent(json) { 
     var len = json.feed.entry.length; 
     distance = json.feed.entry[0].gsx$todaydist.$t; 
     var calso = json.feed.entry[0].gsx$todaycalso.$t; 
     var calsi = json.feed.entry[0].gsx$todaycalsi.$t;    
} 


    $(document).ready(function() { 
      $(".distance").html(distance) 
}); 
</script> 
+1

Не могу поверить, что это было так просто! Я даже не мог увидеть разницу в вашем коде сначала ... Спасибо! – mrbiscuits

+0

Я поднимусь и соглашусь, как только пройдет срок – mrbiscuits

Смежные вопросы