0

現在、AJAX を使用して MySQL データベースから情報を削除しようとしていますが、何らかの理由で、指定した ajax URL にリクエストが送信されません。

送信されるコードは次のとおりです。

<script type="text/javascript"> // Notes Delete
    $(document).ready(function(){
        $("form#RemoveNote2").submit(function() {
            var ID = $('#ID').attr('value');
                $.ajax({
                    type: "POST",
                    url: "ajaxdeleteinvoicenote.php",
                    data: "id="+ ID,
                    datatype: "json",
                    success: function(result){
                        alert('test');
                    }
                });
            return false;
        });
    });
</script>

送信元のフォームは次のとおりです。

<form id="RemoveNote2" style="margin: 0px; padding:0px;" method="post">
  <span style="width:80%; display:inline-block;">Test</span>
  <span style="text-align: center; width: 10%; display:inline-block;">
    <input id="ID" type="hidden" value="39">
    <button class="close" type="submit">×</button>
  </span>
</form>

Fiddler2 というツールを使用して、ajaxdeleteinvoicenote.php に送信するタスクすら完了していないことに気付きました。理由はありますか?

4

6 に答える 6

1

データはJSONタイプの形式ではありません。パラメータデータ型を削除してみてください: "json"

良い1日を

于 2012-05-14T11:13:56.867 に答える
0

そのではないことに注意してください datatype: "json",

これは dataType: "json",

また...使用する代わりに..

var ID = $('#ID').attr('value');

このように使うのは良いことです...

 var ID = $('#ID').val();

これで解決すると思います。

于 2012-05-14T11:13:27.607 に答える
0

オプションをJSONに設定して送信しますがdatatype、実際のデータはフォームでコード化されていますdata: "id="+ ID,。JSONでは{"id":"123"}。データ型を削除して(jQueryはデータを正しく送信する方法を理解するのに十分賢い)、「id=」ビットを削除してそのまま送信するのが最善{id:$('#ID').value}です。

jQueryを使用する場合、オブジェクトをJSON.stringifiedにする必要はありません

于 2012-05-14T11:13:51.477 に答える
0

MozillaのFirebugを使用して、含まれているjQueryのバージョンを確認してください。あなたのコードは私のためにうまく働いています。

<script src="http://code.jquery.com/jquery-latest.js"></script>
<form id="RemoveNote2" style="margin: 0px; padding:0px;" method="post">
  <span style="width:80%; display:inline-block;">Test</span>
  <span style="text-align: center; width: 10%; display:inline-block;">
    <input id="ID" type="hidden" value="39">
    <button class="close" type="submit">X<button>
  </span>
</form>

<script type="text/javascript"> // Notes Delete
    $(document).ready(function(){
        $("form#RemoveNote2").submit(function() {
            var ID = $('#ID').val();
                $.ajax({
                    type: "POST",
                    url: "ajaxdeleteinvoicenote.php",
                    data: "id="+ ID,
                    datatype: "json",
                    success: function(result){
                        alert(result);
                    }
                });
            return false;
        });
    });
</script>

「ajaxdeleteinvoicenote.php」に以下の行を追加します。

<?php
echo $_POST['id'];die;
?>
于 2012-05-14T11:37:11.213 に答える
0

ajaxdeleteinvoicenote.phpとコンテンツを送信するページを同じフォルダーに配置しましたか?
また、次のように最後のプロパティからコンマ(、)を削除します。

 datatype: "json"
于 2012-05-14T12:47:11.700 に答える
0
 $(document).ready(function(){
        $("form#RemoveNote2").submit(function() {
                //e.preventDefault();

                $.ajax({                   
                    url: "/ajaxdeleteinvoicenote.php", type: "POST", dataType: "json",
                    data: { id : $(this).find('#ID').val() },                        
                    success: function(result){
                        alert(result);
                    }
                });
            return false;
        });
    });
于 2012-05-14T12:00:02.870 に答える