解析html页面中的内容

时间:2015-12-14 19:58:41

标签: javascript jquery html css

需要根据从其他html页面提取的数据

动态更新主页div中的内容
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 个答案:

答案 0 :(得分: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(),你就完成了。