0

シリアル番号を入力できるように、入荷する在庫部品を表示するページがあります。データベースを更新し、シリアル番号が入力された行IDを非表示にするJQueryAjax関数があります。ここでは問題ありません。

アンロード時にもメールを送信しますが、問題ありません。

私がやりたいのは、ajax関数の後に変数を1に設定して、株式に修正があったことを確認し、onload関数でその変数のステータスを確認して、メールを送信します。

私のセットのシリアル番号は:

function updateField(what) {
    serial = document.getElementById('serialno_' + what).value;
    po = document.getElementById('po_' + what).value;
    entry = what;
    if (serial != "") {
        $("#totalitems").load("stock_ajaxserial.php?id=" + entry + "&stock=" + serial + "&po=" + po);
        $("#tr_" + what).hide("slow");
    };
}

そして私onunloadは単純です:

function SendEmail()
{
    $.get("stock_in_email.php?po=<?php echo $row_rs_po['entry']; ?>&id=<?php echo $row_rs_po['Order_id']; ?>");
} 
4

2 に答える 2

0

Cookie を使用して にデータを設定し、後でunloadデータを読み取ることができます。onload

于 2011-11-21T11:27:30.323 に答える
0

コードの外側でグローバル変数を設定し、その値を内部で確認できます。私見は、あなたが必要とすることを行うための最もクリーンな方法ではありませんが、それがあなたが望むものであることを願っています.

var ajaxReady = 0;
function updateField(what) {
    serial = document.getElementById('serialno_' + what).value;
    po = document.getElementById('po_' + what).value;
    entry = what;
    if (serial != "") {
        $("#totalitems").load("stock_ajaxserial.php?id=" + entry + "&stock=" + serial + "&po=" + po, function() {
            ajaxReady = 1;
        });
        $("#tr_" + what).hide("slow");
    };
}

そしてあなたのonunload機能で:

  function SendEmail()
  {
      if (ajaxReady) // ajax must be done to send e-mail
          $.get("stock_in_email.php?po=<?php echo $row_rs_po['entry']; ?>&id=<?php echo $row_rs_po['Order_id']; ?>");
  } 

それが役に立てば幸い。

于 2011-11-21T11:28:00.347 に答える