0

このコードが正常に機能することはわかっていますが、このコードを (Ruby on Rails) プロジェクトに配置すると機能しません。

    <script type="text/javascript">
     $.ajax({
          type: "POST",
          url: "http://www.mywebsite.com",
          data: { name: "John", location: "Boston" }
          }).done(function( msg ) {
          alert( "Data Saved: " + msg );
      });
    </script>

しかし、$.ajax()$.get () に置き換えると機能します

$.get("/users/20.json", function(data)
      {
      }).done(function( msg ) {
          alert( "Data Saved: " + msg );
       });

私の(Ruby on Rails)プロジェクトで $.ajax が機能しないのに $.get() が正常に機能する理由を誰かが知っていますか?

4

3 に答える 3

1

解決策は次を追加することでした:

dataType: "script"
于 2012-07-30T21:54:22.233 に答える
1

ルーティングで処理が GET リクエストに制限されていませんか? それは、「POST」ベースのクエリ(最初の例)が機能しないことを説明しますが、「GET」ベースのクエリは機能します。

これについては、http: //guides.rubyonrails.org/routing.htmlを参照してください...

$.ajax 関数の「type」オプションを次のように変更してみてください。

   <script type="text/javascript">
 $.ajax({
      type: "GET",
      url: "http://www.mywebsite.com",
      data: { name: "John", location: "Boston" }
      }).done(function( msg ) {
      alert( "Data Saved: " + msg );
  });
</script>

編集:おっと、私が入力している間にこれを修正したのを見ました。:)

于 2012-07-30T21:55:27.100 に答える
-1

これにはjQueryを使用していると思います。jQuery を最新バージョンに置き換えてみてください。

于 2012-07-30T21:46:44.653 に答える