2017-02-21 53 views
2

按鈕的onClick()事件並不是指向任何地方。可能會出現ajax的成功()問題。我無法弄清楚我是新的對此。當調用API時,Ajax success()不起作用。

var currentAuthor=""; 
var currentQuote=""; 
$(document).ready(function(){ 
    $("#getMessage").on("click",function(){ 
    $.ajax({ 
    header:{ 
     "X-Mashape-Key":"xE5Raw3acMmsh4dpp6HEk5WSbJtTp1X9TL3jsnue3VRzr5vNNa", 
    Accept: "application/json", 
     "Content-Type": "application/x-www-form-urlencoded" 
    }, 
    url:"https://andruxnet-random-famous-quotes.p.mashape.com/?cat=", 
    success: function(response){ 
     var r=json.parse(response); 
     currentQuote=r.quote; 
     currentAuthor=r.author; 
     $("#author").html(r.author); 
    } 
    }); 
    }); 
}); 
+0

您是否在控制檯中發現任何錯誤? – Hodrobond

+0

我試着將你的代碼複製到小提琴中,我得到了401,頭文件「X-Mashape-Key」永遠不會被添加 – Nicolas

+0

那麼,我該怎麼做? @Hodrobond – aayushi

回答

5

你有2個問題:

  1. 頭應該是headers
  2. JSON.parse而不是json.parse

var currentAuthor = ""; 
 
var currentQuote = ""; 
 
$(document).ready(function() { 
 
\t $("#getMessage").on("click", function() { 
 
\t \t $.ajax({ 
 
\t \t \t headers: { 
 
\t \t \t \t "X-Mashape-Key": "xE5Raw3acMmsh4dpp6HEk5WSbJtTp1X9TL3jsnue3VRzr5vNNa", 
 
\t \t \t \t "Accept": "application/json", 
 
\t \t \t \t "Content-Type": "application/x-www-form-urlencoded" 
 
\t \t \t }, 
 
\t \t \t url: "https://andruxnet-random-famous-quotes.p.mashape.com/?cat=", 
 
\t \t \t success: function (response) { 
 
\t \t \t \t var r = JSON.parse(response); 
 
\t \t \t \t currentQuote = r.quote; 
 
\t \t \t \t currentAuthor = r.author; 
 
\t \t \t \t $("#author").html(r.author); 
 
\t \t \t } 
 
\t \t }); 
 
\t }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button id="getMessage">Get Message</button> 
 
<p id="author"></p>

+0

它的工作!謝謝! @ Z-Bone – aayushi

+0

@aayushi當然可以:) –