我正在尝试提交表单,然后更新一些值并再次提交。但是,当我这样做时,只提交了LAST版本。我为Unsafe Javascript attempt to access frame with URL domain2.com from frame with URL domain1 . Domains, Protocols and Ports must match.
表单代码:
<form id="hiddenform" method="post" enctype="multipart/form-data" action="http://www.actonsoftware.com/acton/forms/userSubmit.jsp" accept-charset="UTF-8" target="tintest">
目标是隐藏的iframe id="tintest"
这是我的代码:
var tbody = $("#vmMainPage table:first tbody");
var lng = tbody[0].rows.length - 1;
var mnstr = "items: ";
$("#vmMainPage table:first tbody tr").each(function(i){
if ((i>0) && (i<(lng-3))) {
item = $(this).children("td").children("a").children("strong").html();
// quantity = "
console.log(item);
$("#hiddenform input#fld_0").val(item);
var $tsta = "";
for ( j=2; j<6; j++)
{
$tst = $("table:eq(2) tr:eq("+j+") td:eq(1)").html();
$tsta = $tsta + $tst +", ";
}
$email = $("table:eq(2) tr:eq(6) td:eq(1)").html();
$("#hiddenform input#fld_2").val($email+"_"+i);
$("#hiddenform input#fld_1").val($tsta);
$("#hiddenform").submit();
}
});
答案 0 :(得分:0)
为了确保您的请求不会相互干扰,您可以为每个请求创建一个iframe并将其作为目标。
这可以通过DOM完成 var cnt = 0;
var ifr = document.createElement("iframe");
ifr.name="ifr"+(cnt++);
ifr.style.display="none"
document.getElementById("iframeContainer").appendChild(ifr);
document.forms[0].target=ifr.name;
document.forms[0].submit()
或jQuery
cnt++
$("#iframeContainer").append('<iframe src="about:blank" name="ifr'+cnt+'"></iframe>');
$("#hiddenform").attr("target","ifr"+cnt);
$("#hiddenform").submit();