1

私はjqueryの問題を抱えています。jqueryの問題だと思いますが、ajax呼び出しでphpページを呼び出しています。明らかにこれは簡単ですが、実際に使用すると 500 エラーが発生し続けます。考えられることはすべて試しました。しかし、私はどこにも行きません。それは私が jquery の達人ではないからだと確信しています。

これはローカルでは機能しますが、本番環境では機能しないことに注意してください。

$('#submit').on('click', function(e){
  e.preventDefault();
  if($('#signupForm').valid())
  {
    var data = $('#signupForm').serializeObject();

    $.ajax({
      type: "POST",
      url: 'http://pathtooweb.com/funcs/signup.php',
      data: data,
      success: function(data) {
        toastr.success(data, "Thank you!");
        $("#signupForm").trigger( "reset" );
      },
      error: function(xhr, ajaxOptions, thrownError) {
        console.log(xhr.responseText);
      }
    });
  }
});

コンソールで発生している実際の問題は次のとおりです。

POST http://pathtooweb.com/funcs/signup.php 500 (Internal Server Error) jquery.js:7845
x.support.cors.e.crossDomain.send jquery.js:7845
x.extend.ajax jquery.js:7301
(anonymous function) pathtooweb.com/:84
x.event.dispatch jquery.js:4676
y.handle

アップデート:

これはクロスドメインの問題ではなく、ある意味でサーバーエラーでした..コードをgithubにプッシュしてからサーバーにダウンしたときに、使用していたライブラリの1つがgithubにアップロードされていなかったことがわかりました。次に、サーバーに引き下げられていませんでした。.gitignore ファイルがなかった理由を本当に言うことはできません。とにかく、「提案」をありがとう。:)

4

1 に答える 1

-1

おい私はあなたがクロスドメインPOSTを試みていると思います..!! これは ajax 経由では許可されておらず、Web 標準に従って厳密に NO NO です。

おそらくローカルで、ajax リクエストで別の URL を使用しています..これもローカルでホストされています..そうですか??

クロスドメイン POST が必要な場合は、フォームアクション URL をクロスドメイン URL として指定して、フォームをその URL に直接投稿します。

2 番目のオプションは、ajax 要求のデータ型として jsonP を使用することです。これはハックですが、機能します。

于 2013-10-05T17:33:41.560 に答える