フォーム送信データの一部を収集したいクライアントがいます。ユーザーがサイトのフォームに入力し、フォームが送信されると、次の JavaScript が呼び出されます。
/* 4. Below script will get all field name/value pairs for given form */
function cpcshowElements(f) {
var formElements = "";
for (var n=0; n < f.elements.length; n++) {
box = f.elements[n];
if (!f.elements[n].value == ""){
formElements += box.name + ":" + f.elements[n].value + ",\n";
}
}
var track = new Image();
/*send data to us*/
track.src="https://www.xxx.com/form_record.cfm?form="+formElements;
//alert("The elements in the form '" + f.name + "' are:\n\n" + formElements);
}
これにより、送信されたデータを取得して保存するコードが呼び出されます。これはうまく機能しますが、常に機能するとは限りません。テストするとき、一貫してデータを取得していないようです。なぜこれが機能するのか、他の機能が機能しないのかを理解できませんでした。私は JavaScript の専門家ではないので、これが JavaScript の仕組みなのかどうかはわかりません。私が問題であると考えることができた唯一のことは、クライアントのWebサイトがフォームの処理を終了し、ユーザーが別のページに誘導されると、スクリプトがまだ終了していない場合は実行を停止することです。私たちはデータを取得しません。誰にもアイデアはありますか?私はここで正しい軌道に乗っていますか?毎回データを取得する方法についてのアイデアはありますか?