2017-04-03 36 views
0

こんにちは私は、私のスリムなPHP APIにPUTリクエストを送信しようとしましたが、それは私のパラメータがnullになるように思えます。ここ は私のコードです:AJAXとJQueryを使用してJSONデータを使用してPUT呼び出しを送信しますか?

function update() { 
 
    $.ajax({ 
 
     type: 'PUT', 
 
     contentType: 'application/json', 
 
     url: 'api/edit' + '/' + $('#id').val(), 
 
     contentType: "application/json", 
 
     data: formToJSON(), 
 
     success: function(data, textStatus, jqXHR){ 
 
      document.location.href="page.php?update=OK" 
 
     }, 
 
     error: function(jqXHR, textStatus, errorThrown){ 
 
      document.location.href="page.php?update=ERROR" 
 
     } 
 
    }); 
 
} 
 

 
function formToJSON() { 
 
    alert($('#id').val()+' '+$('#param1').val()+' '+$('#param2').val()+' '+$('#param3').val()); 
 
    return JSON.stringify({ 
 
     "id": $('#id').val(), 
 
     "param1": $('#param1').val(), 
 
     "param2": $('#param2').val(), 
 
     "param3": $('#param3').val() 
 
     
 
} 
 

 
$('#btnUpdate').click(function() { 
 
     update(); 
 
    return false; 
 
});
誰かがこれを私を助けることができますか?お願いします。

+0

その正確なコピーペーストで動作します? 'fromToJSON()'メソッドの中括弧が閉じていないことに気付きます。ブラウザの開発者ツールのコンソールウィンドウにエラーログがないことを確認してください。 –

+0

申し訳ありませんが、ここでコードを編集して閉じ括弧を鳴らしますが、コンソールにエラーがありません –

答えて

0

は、それは最終的にあなたのコードからこの

function update() { 
 
    $.ajax({ 
 
     type: 'PUT', 
 
     dataType: 'application/x-www-form-urlencoded', 
 
     url: '/api/edit', 
 
     data: {    id: $('#id').val(), 
 
\t \t \t \t \t   param1: $('#param1').val(), 
 
\t \t \t \t \t   param2: $('#param2').val(), 
 
\t \t \t \t \t   param3: $('#param3').val(), 
 
\t \t \t \t \t   param4: $('#param4').val() 
 
          
 
      } 
 
     
 
     
 
    }); 
 
}

0

このコードがうまくいきたいと思います。

function update() { 
 
    $.ajax({ 
 
     type: 'PUT', 
 
     contentType: 'application/json', 
 
     url: 'api/edit' + '/' + $('#id').val(), 
 
     contentType: "application/json", 
 
     data: formToJSON(), 
 
     success: function(data, textStatus, jqXHR){ 
 
      document.location.href="page.php?update=OK" 
 
     }, 
 
     error: function(jqXHR, textStatus, errorThrown){ 
 
      document.location.href="page.php?update=ERROR" 
 
     } 
 
    }); 
 
} 
 

 
function formToJSON() { 
 
    alert($('#id').val()+' '+$('#param1').val()+' '+$('#param2').val()+' '+$('#param3').val()); 
 
    return JSON.stringify({ 
 
     "id": $('#id').val(), 
 
     "param1": $('#param1').val(), 
 
     "param2": $('#param2').val(), 
 
     "param3": $('#param3').val() 
 
     
 
    }) 
 
} 
 

 

 
$(document).ready(function() { 
 

 
$('#btnUpdate').click(function() { 
 
     update(); 
 
    return false; 
 
}); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

OPや他の人がこの問題を理解できるように、何が変更されたのか、何が間違っていたのか、あなたが行った変更を簡単に識別できます。 –

+0

ありがとうございますが動作しません –

関連する問題