2014-10-29 4 views
0

Я пытаюсь загрузить виджет Accuweather, который может меняться по местоположению с помощью выпадающего списка. Он работает, когда сначала нет загруженного места. Но когда я пытаюсь изменить местоположение, он больше не работает. Я предполагаю, что я должен вспомнить сценарий или функцию Accuweather (но я не знаю, как это сделать). Вот link of the image того, что я сделал.Как изменить расположение виджета Accuweather в HTML

А вот часть моего JS кода:

$('#awcc1414464209059').attr('data-locationkey',selected); //change the div's data-location-key to the selected location's key 
$('#awcc1414464209059').attr('class',"aw-widget-current"); 
$('#awcc1414464209059').attr('data-unit', "c"); 
$('#awcc1414464209059').attr('data-language',"en-us"); 
$('#awcc1414464209059').attr('data-useip', "false"); 
$('#awcc1414464209059').attr('data-uid',"awcc1414464209059"); 
getweather(); 

function getweather(){ 
    var script = document.createElement("script"); 
    script.type = "text/javascript"; 
    script.src = "assets/js/accuweather.js"; 
    document.getElementsByTagName("head")[0].appendChild(script); 
    return false; 
} 

PS: Было бы лучше, если я могу загрузить несколько виджетов на один раз, так что я могу отобразить все места для удобства пользователей. (Я уже пробовал, но я не могу заставить его работать)

ответ

0

Я сделал это. Для тех, кто нуждается в помощи с той же проблемой, вам необходимо перезагрузить файл сценария для accuweather.

for ($m=0; $m < sizeof($mun_name); $m++) { 
$echo .= '<a href="" class="aw-widget-legal"></a> 
<div id="awcc1414464'.$weather_id[$m].'" data-locationkey="'.$weather_id[$m].'" class="aw-widget-current" data-unit="c" data-language="en-us" data-useip="false" data-uid="awcc1414464'.$weather_id[$m].'"></div> 
<script>getweather()</script>'; 
} 

В моем коде, функция getweather() загружает скрипт и добавляет его в HTML голову, тем самым давая мне result in this link.