javascript
  • json
  • parsing
  • 2012-02-23 138 views -2 likes 
    -2

    我该如何解析这个给出Json响应的URL?解析来自json中的url的响应

    $.getJSON('http://url.php?id=chat_init&sess_d='+sessionID+'&user_id='+document.getElementById("user_id").value+ '&to_id='+document.getElementById("to_id").value,function (data) { 
    
         alert(data.status); 
         alert(data.msg); 
         alert(data.room_id); 
    

    响应:

    {"status":1,"msg":"chat is initilize","room_id":13} 
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
        <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> 
        <title></title> 
        <script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script> 
        <script type="text/javascript"> 
    //<![CDATA[ 
        var sessionID=null ; 
        function A() { 
         $.getJSON('url.php?id=login&email='+document.getElementById("txtemail").value+'&password='+document.getElementById("txtpassword").value, function (data) { 
          sessionID = data.session_id; 
          alert(data.status); 
          alert(data.msg); 
          alert(data.user_id); 
          alert(sessionID); 
         }); 
        } 
    
        function B() { 
         $.ajax({ 
          type: 'GET', 
          url: 'url.php', 
          dataType: 'json', 
          data: { 
           id: 'chat_init', 
           sess_d: sessionID, 
           user_id: $("#user_id").val(), 
           to_id: $("#to_id").val() 
         },success: function(data) { 
          alert(data.status); 
          alert(data.msg); 
          alert(data.room_id); 
         } 
        }); 
    
        //]]> 
        </script> 
    
    
    </head> 
    <body> 
        Username : 
    
        <form> 
         <input type="text" id="txtemail" /> 
         <br /><br /> 
    
         Password : <input type="password" id="txtpassword" /> 
         <br /> 
    
         <input type="button" value="Login" onclick="A()" /> 
         <br /> 
    
         My id is : <input type="text" id="user_id" /> 
         <br /><br /> 
    
         To ID is : <input type="text" id="to_id" /> 
         <br /><br /> 
    
         <textarea rows="10" cols="25"></textarea> 
         <br /> <br /> 
    
         <textarea rows="2" cols="18"></textarea> 
    
         <input type="button" value="Initialize chat" onclick="B()" /> 
    
        </form> 
    </body> 
    </html> 
    

    Thankx任何帮助......

    +5

    JSON已经为你解析。 “解析这个网址”是什么意思? *你的意思是“解析JSON”*吗? - 我听起来像谷歌。 – Joseph 2012-02-23 05:32:15

    +0

    是的,我的意思是我没有得到我已经显示的回复 – 2012-02-23 05:34:42

    +0

    检查你的语法 – Joseph 2012-02-23 07:58:01

    回答

    0
    <input type="button" value="Initialize chat" id="B" /> <!--note the id--> 
    
    $(document).ready(function() { 
    
        //using the button with id "B" to call beta 
        $('#B').on('click', function() { 
         beta(); 
        }); 
    
        function beta() { 
         $.ajax({ 
    
          //base url 
          url: 'url.php', 
    
          //parameters 
          data: {   
           id: 'chat_init', 
           sess_d: sessionID, 
           user_id: $("#user_id").val(), 
           to_id: $("#to_id").val() 
          }, 
    
          type: 'GET', 
          dataType: 'json', 
          success: function(data) { 
           alert(data.status); 
           alert(data.msg); 
           alert(data.room_id); 
          } 
         }); 
        } 
    
    });​ 
    

    http://jsfiddle.net/g3zUe/

    1

    这是一种丑陋的,请尝试重写它作为一个$.ajax电话:

    $.ajax({ 
        type: 'GET', 
        url: 'url.php', 
        dataType: 'json', 
        data: { 
         id: 'chat_init', 
         sess_d: sessionID, 
         user_id: $("#user_id").val(), 
         to_id: $("#to_id").val() 
        }, 
        success: function(data) { 
         alert(data.status); 
         alert(data.msg); 
         alert(data.room_id); 
        } 
    }); 
    
    +0

    http://url.php?id = chat_init&sess_d = &user_id = &to_id = &title = 这是我的真实网址。 – 2012-02-23 05:36:50

    +0

    不,我没有得到回复 – 2012-02-23 05:40:12

    +0

    你尝试过手动输入网址吗?你有没有检查控制台?你确定服务器正在返回JSON吗? – Joseph 2012-02-23 05:43:39

    0

    我已经更新了您的HTML和jQuery代码。我在我的测试结束它,它确实indeed make the AJAX call,但由于我没有我的服务器上url.php,它会得到一个404错误。看看它是如何工作的:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
        <title></title> 
        <script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script> 
        <script type="text/javascript"> 
    //<![CDATA[ 
        var sessionID = null; 
        function A() { 
         $.getJSON('url.php', { 
          id: 'login', 
          email: $("#txtemail").val(), 
          password: $("#txtpassword").val() 
         }, function (data) { 
          sessionID = data.session_id; 
          alert(data.status); 
          alert(data.msg); 
          alert(data.user_id); 
          alert(sessionID); 
         }); 
        } 
    
        function B() { 
         $.ajax({ 
          type: 'GET', 
          url: 'url.php', 
          dataType: 'json', 
          data: { 
           id: 'chat_init', 
           sess_d: sessionID, 
           user_id: $("#user_id").val(), 
           to_id: $("#to_id").val() 
          }, 
          success: function(data) { 
           alert(data.status); 
           alert(data.msg); 
           alert(data.room_id); 
          }, 
          error: function(jqXHR, textStatus, errorThrown) { 
           alert("Error: " + errorThrown); 
          } 
         }); 
        } 
    
        $(document).ready(function() { 
         $("#loginButton").click(A); 
         $("#initChatButton").click(B); 
        }); 
    
        //]]> 
        </script> 
    
    
    </head> 
    <body> 
        <form> 
         <p>Username : <input type="text" id="txtemail" /></p> 
         <p>Password : <input type="password" id="txtpassword" /></p> 
         <p><input type="button" value="Login" id="loginButton" /></p> 
    
         <p>&nbsp;</p> 
    
         <p>My id is : <input type="text" id="user_id" /></p> 
    
         <p>To ID is : <input type="text" id="to_id" /></p> 
         <p><textarea rows="10" cols="25"></textarea></p> 
    
         <p><textarea rows="2" cols="18"></textarea></p> 
    
         <p><input type="button" value="Initialize chat" id="initChatButton" /></p> 
        </form> 
        </body> 
    </html> 
    
    相关问题