0

何もしていないように見える jQuery AJAX リクエストがあります。

Chrome デバッガーの [ネットワーク] タブに何も表示されません。

エラー/成功のコールバックは関数内で呼び出されておらず、サーバー側では何も起こらないようです。

問題は、これが私のメイン ローカル ドメインで発生していないことです: http://dev.sitename.com

たとえば、内部ページでのみ発生します: http://dev.sitename.com/about

私の推測では、プロセスに損害を与える .htaccess ルールがいくつかあると思いますが、ネットワーク アクティビティはまったく見られません。

これが私のコードです:

$.ajax({
    url: 'ajax.php?cachekiller=' + (new Date()).getTime(),
    data: {
        action: 'doLogin'
    },
    success: function() {
    // Not being called
    },
    error: function() {
    // Not being called either
    }
});

ありがとうございました

4

3 に答える 3

4

これを試して:

$.ajax({
  url: 'ajax.php',
  cache: false,
  data: {
      action: 'doLogin'
  },
  success: function(data) {
      console.log(data);
  },
  error: function() {
      console.log('error');
  }
});

そして ajax.php スクリプトで:

header("Pragma: no-cache");
header("Cache-Control: must-revalidate");
header("Cache-Control: no-cache");
header("Cache-Control: no-store");
header("Expires: 0");
于 2012-10-31T20:35:13.353 に答える
2

データパラメータにキャッシュキラーを入れてみてください

$.ajax({
    url: 'ajax.php',
    data: {
        cachekiller: (new Date()).getTime(),
        action: 'doLogin'
    },
    success: function() {
    // Not being called
    },
    error: function() {
    // Not being called either
    }
});
于 2012-10-31T20:15:40.877 に答える
1

OK、すべて問題ないようです。チェックできる点がいくつかあります

  1. (法外に思えるかもしれません)jQuery.jsを含めましたか
  2. jQuery.js が他の js ファイルの前に含まれていることを確認してください
  3. /などの前に aを置き、サーバーのルートにurl配置したことを確認してくださいajax.php
  4. コメントで述べたように、firebug コンソール (firefox) または chrome 開発者ツールで js エラーを確認します。
$.ajax({
        url: '/ajax.php',
        cache:false,
        data: {
            action: 'doLogin'
        },
        success: function() {
        // Not being called
        },
        error: function() {
        // Not being called either
        }
    });

cache:falseajax メソッドのcachekiller use prop を使用する必要はありません

于 2012-10-31T20:30:13.170 に答える