2017-12-22 6 views
-3

JavaScriptの新機能です。私のウェブサイト用の小さなプロジェクトを作成しようとしており、何か助けが必要です。ajaxを使ってウェブサイトから値を読み取る方法は?

このウェブサイト(https://use.gameapis.net/mc/query/players/147.135.204.52)から私のサーバーにあるプレーヤーの数を読み、自分のウェブサイトに書き込む必要があります。

私はこれを試してみますが、それは仕事量です、あなたは問題を見ることができますか?

<script> 
 
$(document).on("ready", function() { 
 
    setInterval(queryJugadores, 5000); 
 
    queryJugadores(); 
 
    $(".navbar-brand").tooltip({placement: "bottom", html: true}); 
 
    $("[data-toggle='tooltip']").tooltip(); 
 
}); 
 

 
    function queryJugadores() { 
 
    $.ajax({ 
 
     url: "https://use.gameapis.net/mc/query/players/147.135.204.52", 
 
     method: "GET", 
 
     success: function(res){ 
 
     if (res["status"]) { 
 
      actualizarJugadores(res["players"]["online"]); 
 
     } 
 
     } 
 
    }); 
 
    } 
 

 
function actualizarJugadores(num) { 
 
    var digitos = ("" + num).split(""); 
 
    var elem = $(".cuenta-jugadores").children("dd"); 
 
    elem.empty(); 
 
    for (index = 0; index < digitos.length; index++){ 
 
    elem.append("<span>" + digitos[index] + "</span>") 
 
    } 
 
    var color = "#43DBE7"; 
 

 
    if (num==0) { 
 
    color = "#d9534f" 
 
    } 
 
    elem.children("span").css("background-color",color); 
 
}
<html> 
 
<body> 
 
<dl class="cuenta-jugadores"> 
 
\t \t \t \t <dd> 
 
\t \t \t \t \t <span>0</span> 
 
\t \t \t \t \t <span>1</span> 
 
\t \t \t \t \t <span>2</span> 
 
\t \t \t \t \t <span>3</span> 
 
\t \t \t \t </dd> 
 
\t \t \t </dl> 
 
</body> 
 
</html>

感謝します。

+5

"私はこれを試してみたが、それは仕事をdosent、あなたが問題を見ることができますか?"それについては何ができませんか?あなたの問題/質問に特化してください。 – Pat

+0

問題は、コードがウェブサイトからプレーヤーの数を奪うことができないことです。私はそれを作るためにチュートリアルに従っています、私が言ったように、私はJavaScriptで新しいです。多くのありがとう –

+0

コードは私のためにうまくいきます(jsの不慮のスクリプトタグを削除した後)。コンソールを開き、エラーが発生していないかどうかを確認してください。そして、htmlにjqueryを含めるようにしてください。 –

答えて

3

コードは正常に動作します。

トップにjQueryUIライブラリhttps://jqueryui.com/tooltip/が必要なようなコードがあり、htmlに含まれていない要素(navbar-brand)を参照しています。私はそのコードを削除しました。

$(document).on("ready", function() { 
 
    setInterval(queryJugadores, 5000); 
 
    queryJugadores(); 
 
    }); 
 

 
function queryJugadores() { 
 
    $.ajax({ 
 
    url: "https://use.gameapis.net/mc/query/players/147.135.204.52", 
 
    method: "GET", 
 
    success: function(res) { 
 
     if (res["status"]) { 
 
     actualizarJugadores(res["players"]["online"]); 
 
     } 
 
    } 
 
    }); 
 
} 
 

 
function actualizarJugadores(num) { 
 
    var digitos = ("" + num).split(""); 
 
    var elem = $(".cuenta-jugadores").children("dd"); 
 
    elem.empty(); 
 
    for (index = 0; index < digitos.length; index++) { 
 
    elem.append("<span>" + digitos[index] + "</span>") 
 
    } 
 
    var color = "#43DBE7"; 
 

 
    if (num == 0) { 
 
    color = "#d9534f" 
 
    } 
 
    elem.children("span").css("background-color", color); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<html> 
 

 
<body> 
 
    <dl class="cuenta-jugadores"> 
 
    <dd> 
 
     <span>0</span> 
 
     <span>1</span> 
 
     <span>2</span> 
 
     <span>3</span> 
 
    </dd> 
 
    </dl> 
 
</body> 
 

 
</html>

0

Ajaxの構文で "タイプ" に "方法" を変えることに加えて、私は他のすべてのエラーを表示することはできません。

$(document).on("ready", function() { 
 
    setInterval(queryJugadores, 5000); 
 
    queryJugadores(); 
 
    /* 
 
    $(".navbar-brand").tooltip({ 
 
    placement: "bottom", 
 
    html: true 
 
    }); 
 
    $("[data-toggle='tooltip']").tooltip();*/ 
 
}); 
 

 

 
function queryJugadores() { 
 
    $.ajax({ 
 
    url: "https://use.gameapis.net/mc/query/players/147.135.204.52", 
 
    type: "GET", 
 
    /* dataType: 'json', */ 
 
    success: function(res) { 
 
     if (res["status"]) { 
 
     actualizarJugadores(res["players"]["online"]); 
 
     } 
 
    } 
 
    }); 
 
} 
 

 
function actualizarJugadores(num) { 
 
    var digitos = ("" + num).split(""); 
 
    var elem = $(".cuenta-jugadores").children("dd"); 
 
    elem.empty(); 
 
    for (index = 0; index < digitos.length; index++) { 
 
    elem.append("<span>" + digitos[index] + "</span>") 
 
    } 
 
    var color = "#43DBE7"; 
 

 
    if (num == 0) { 
 
    color = "#d9534f" 
 
    } 
 
    elem.children("span").css("background-color", color); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<dl class="cuenta-jugadores"> 
 
    <dd> 
 
    <span>0</span> 
 
    <span>1</span> 
 
    <span>2</span> 
 
    <span>3</span> 
 
    </dd> 
 
</dl>

+2

'1.9.0より前のバージョンのjQueryを使用している場合は、タイプを使用する必要があります。私は心からそうではないことを願っています。 –

関連する問題