2016-04-01 6 views
0

ボタンをクリックすると、ノードサーバーから特定のデータを取得してクライアント側にあるマップを作成する必要があるフロントエンドコードがあります。このマップは、上に表示されます。私は上をクリックするとボタンクリック時にサーバーnodejsからデータを要求する

app.post('/heatmap', function(req, res) { 

    console.log("hey"); 
    res.send(densityList); 

}); 

<div id="heatmap"> 
     <input name="heatit" type="submit" value="Heat up!"> 

     <script> 
      $("#heatit").click(function(){ 

       $.ajax({ 
        url:"/heatmap", 
        type: "POST", 
        success: function(result) { 
         console.log("hi"); 
        }     
        }); 
       }); 

      </script> 
    </div> 

そして、これは私のサーバー側のコードです:「http://localhost:8080/

は、サーバからの要求に私のコードは次のようになります「ヒートアップ!」、何も起こりません。ブラウザコンソールを調べるとリクエストが送信されません。ログ出力も取得できません。

フロントエンドにバックエンドデータを取得する方法を教えてもらって、フロントエンドページを動的に変更することはできますか?

答えて

3

あなたのスクリプトは呼び出されていません。あなたの入力はheatitですが、あなたのjQueryはidがheatitのものをクリックしています。あなたのhtmlにそのIDを設定し、そこから行くお試しください:

<input id="heatit" name="heatit" type="submit" value="Heat up!"> 

あなたがあなたのクリックのリスナーを変更することができ、同じあなたのhtmlを維持したい場合:投稿の修正を行いました

$('input[name=heatit]').on('click', function(){ 
    //your code 
}) 
+0

おかげで。サーバーが応答を送信すると、結果は私のajaxの成功関数によって取得されるはずです。私はそれを記録しようとしているが、私は何も得ていない。 – newenthusiast

+0

また、私はそのエンドポイントに "POST"し、404を返すので "GET"しないことを認識しませんでした。 – newenthusiast

関連する問題