我们有我们想收集一些自己的表单提交数据的客户端。用户将填写表格,在他们的网站和表单提交时,下面的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的工作方式。我唯一能想到的问题可能是,一旦客户端网站完成处理表单并将用户导向另一个页面,脚本将停止运行,如果尚未完成,那么我们将无法获取数据。有人有主意吗?我在正确的轨道上吗?关于如何制作它的任何想法,我们每次都会获取数据?
你知道JQuery的? – 2013-04-26 18:03:27
尝试执行页面导航时执行某些操作时,行为不一致。您可以停止表单提交行为,设置该图像的'src',并在发生'load'事件(意味着完成对服务器的请求)时提交表单。 – Ian 2013-04-26 18:04:39
我无法控制客户网站或其表单行为。我得到客户添加一个onclick事件到他们的表单提交按钮,调用上面的JavaScript文件,他们也包括在他们的表单页面上。这是他们唯一允许的事情。 – user2249342 2013-04-26 18:27:39