如何在jquery中解析ajax响应?

时间:2013-10-15 10:31:11

标签: ajax jquery

我想知道如何在jquery脚本中解析来自ajax的响应。

已编辑:

这是我的jquery:jquery_test.jsp

 <h1>Hello World!</h1>

    <select id="body_id" name="current_session" >
            <option value="Winter">Winter</option>
            <option value="Monsoon">Monsoon</option>
    </select>

     <script>
      $( "#stream" ).change(function() {
           var selectedVal=$("#stream option:selected").val();
            $.ajax({
                 url:"checkonserver.jsp?current_session="+selectedVal,
                 success:function(msg){
                 alert(msg);
                   }
                });
              });
    </script>
    </body>

这是我的ajax代码(checkonserver.jsp)

    <body id="body_id" >
    <% if(request.getParameter("current_session").toString().equals("Winter")){%>
        It's COLD
     <% 
     }
       else{
      %>
      It's HOT
    <%}%>
    </body>

我从ajax到jquery获取msg作为休闲(.jsp页面)//你在列表中选择季风

<head>
    <body>
        It's HOT         
    <\body>
<\head>

我的问题是如何解析msg以获取上述jsp主体内的数据。 例如:我只想在浏览器上输出its HOT。不是如上所述的整个html文件

3 个答案:

答案 0 :(得分:2)

在body标签下,您可以使用Jquery获取所有数据:

var updatedData = msg;
jQuery(updatedData).find('body').html();

更新jquery_test.jsp页面:

卸下:

url:"checkonserver.jsp?current_session="+selectedVal,
success:function(msg){
    alert(msg);
}

添加:

url:"checkonserver.jsp?current_session="+selectedVal,
dataType : 'html',
success:function(msg){
    var updatedData = msg;
    alert(jQuery(updatedData).find('body').html());
}

答案 1 :(得分:1)

<强> 1。要从一个对象数组中获取JSON,请使用此

     $.ajax({
                      type:"GET",
                      dataType:"json",
                      url:"thejson",
                      success: function(data) {
                           $.each(data, function(index,element){
                              alert(element.Device);
                         });
                       },
                      error: function() {
                        alert("Not Found File");
                      }
                    });



    JSON Could be like
    [
        {
            "Device": "xklklklx",
            "Count": 5
        }
    ]

<强> 2。从对象获取JSON使用此:

     $.ajax({
                  type:"GET",
                  dataType:"json",
                  url:"thejson",
                  //data:
                  success: function(data) {
                    alert(data.Device);
                  },
                  error: function() {
                    alert("Not Found File");
                  }
                });

    JSON Can be like:
     {
            "Device": "Some Device",
            "Count": 5
        }

答案 2 :(得分:0)

第1步:将id提供给字段

<html>
    <body id="body_id" name="body_name">
        <h1>field comes here</h1>
    <\body>
<\html>

第2步:您可以按照以下任何代码

$.ajax({
    url: "checkonserver.jsp?current_session=" + selectedVal,
    success: function(msg){
        //alert(msg)
        document.getElementById('body_id').innerHTML = msg; // or
        document.getElementByName('body_name').innerHTML = msg; //or
        JQuery('#body_id').value = msg; //or
        JQuery('#body_id').innerHTML = msg; 
    }
});