javascript
  • json
  • parsing
  • 2012-02-23 141 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> 
    
    相關問題