2016-11-01 10 views
2

入力フォームを作成しようとしていますが、AJAX応答と入力の両方を表示します。ただし、submitがページをリフレッシュするので、フォームが送信された直後にAJAXレスポンスは削除されます。どのように応答を保持するのですか?getJsonをリクエストして入力フォームを同時に送信する方法

以下は私のコードです。コードのために働いていない

    $('#inputButton').click(function() { 
 
         var URL = 'URLEXAMPLE'; 
 
\t \t \t \t   $.getJSON(URL, function(data){ 
 
\t \t \t \t    
 
\t \t \t \t    for (var i = 0; i < data.length; i++){ 
 
\t \t \t \t     var info = data[i].content; 
 
           $("#jsonInfo").append(info); 
 
          }; 
 
\t \t \t \t  }); 
 
\t \t \t \t  
 
      
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input id="inputButton" type="submit" value="Done"> 
 
       <div id="jsonInfo"></div>

答えて

0

理由:

あなたのJSONがproberly閉じていませんでした1.check。あなたのHTMLのpage.Iでは利用できないdocument.ready

3.Fromタグを適用して

2.And試みは、formタグを追加しました。

$(document).ready(function(){ 
 
       $('#inputButton').click(function (e) { 
 
        var URL = 'URLEXAMPLE'; 
 
        $.getJSON(URL, function(data){ 
 

 
         for (var i = 0; i < data.length; i++){ 
 
          var info = data[i].content; 
 
          $("#jsonInfo").append(info); 
 
         }; 
 
         }) 
 
        console.log('Its work') 
 
        e.preventDefault(); 
 
       }); 
 
}); 
 
      </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form id="form"> 
 
<input id="inputButton" type="submit" value="Done"> 
 
      <div id="jsonInfo"></div> 
 
    </form>

+0

お寄せいただきありがとうございます。コードを実行しようとしましたが、フォームを送信できませんでした。私は行方不明のものがありますか? – Young

+0

コードが正常に動作しています。コンソールからエラーが発生しました.logを使用して投稿できますか?「F12」をクリックしてください – prasanth

+0

コードを使用しています。どうもありがとうございます! – Young

1
$('#inputButton').click(function (e) { 

    e.preventDefault(); // prevent default behavior i.e. refresh page 

    var URL = 'URLEXAMPLE'; 
    $.getJSON(URL, function(data){ 

    for (var i = 0; i < data.length; i++){ 
     var info = data[i].content; 
     $("#jsonInfo").append(info); 
    }; 
}); 
+0

ご意見をありがとうございました!私は上記のコードを実装しようとしましたが、修正できませんでした。 – Young

+0

上記のprasadからの回答。 – nicovank

+0

あなたの助けに感謝します! – Young

0
$("form").submit(function(ev){ //need slector to be form. 
     ev.preventDefault(); // prevent default submit behavior 
    }); 

または

$('#inputButton').click(function() { 
    $(this).parents('form').submit(function(e){ 
        e.preventDefault(); 
        var URL = 'URLEXAMPLE'; 
        $.getJSON(URL, function(data){ 

         for (var i = 0; i < data.length; i++){ 
          var info = data[i].content; 
          $("#jsonInfo").append(info); 
         }; 
       }); 
     }); 
関連する問題