2015-12-14 6 views
-2

нужно динамически обновлять содержимое в DIV главной страницы, на основе данных, извлекаемых из другой HTML страницыАнализировать содержание из HTML страницы

setInterval(function() { 
    $.ajax({ 
     type:'GET', 
     url:"url for status", 
     success : function(data){ 
      console.log(data); 
     } 
    }) 
},3000); 

Содержания «данные» напечатана в консоли инструментов разработчика:

<html> 

<style> 
</style> 

<head> 
</head> 

<script> 
var conns=[{num:1, 
      id:1, 
      Conn:[{type:'ppp', 
        Enable:1, 
        ConnectionStatus:'Disconnected', 
        Name:'CONNECTION_1', 
        Uptime:0, 
        ConnectionError:'TIME_OUT', 
        .............. 
        }] 
      }, 
      {num:2, 
      id:2, 
      Conn:[{type:'ppp', 
        Enable:1, 
        ConnectionStatus:'Disconnected', 
        Name:'CONNECTION_2', 
        Uptime:0, 
        ConnectionError:'TIME_OUT', 
        .............. 
        }] 
      }] 
</script> 

</html> 

Необходимо извлечь ConnectionStatus, Name и ConnectionError из этого содержимого и отобразить его в соответствующем div на главной странице.

+1

Можете ли вы изменить способ получения данных? Если это так, было бы лучше, если бы вы отправили ответ как 'json',' xml' или другой язык передачи данных. – Gonzalo

ответ

0

я рекомендовал бы использовать другой тип передачи, однако, вы могли бы использовать что-то вроде этого:

function break_out_each_id(){//returns array of indexes where id starts 
    var i = 0; 
    id_objs = []; 
    while data.indexOf('id', i) > -1{ 
     id_objs[i] = data.indexOf('id', i); 
     i++; 
    } 
    return id_objs 
} 

function find_values(){//pseudo code 
    use the array of indexes from first index to next index 
    in that string, do index of each value you are looking for (ConnectionStatus...) 
    then parse that line after the ':' to get the value. 
    Do this for each index in indexes array 
} 

Извините за псевдокод, но этот пост становится очень долго. Как я уже сказал, было бы намного лучше просто отправить ответ как JSON (даже если это строчная версия). В этом случае вы можете просто сделать простой JSON.parse(), и все будет готово.

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