当用户在Intranet上时,jQuery动态添加未发送到数据库的表单元素数据

我有一个有趣的问题。 我为跑步者建立了一个表格来报名参加比赛。 该表单允许用户添加多个跑步者并一次签名。 使用jQuery编程额外的运行程序function。

这是增加额外跑步者的jQuery ……

 var current= 1; $(document).ready(function() { $("#addrunner").click(function() { current++; $newrunner= $("#runnerTemplate").clone(true).removeAttr("id").prop("id", "fieldSet" + current).insertBefore("#runnerTemplate"); $newrunner.find("input").each(function(i) { var $currentElem= $(this); $currentElem.prop("name",$currentElem.prop("name")+current); $currentElem.prop("id",$currentElem.prop("id")+current); }); $newrunner.find("select").each(function(i) { var $currentElem= $(this); $currentElem.prop("name",$currentElem.prop("name")+current); $currentElem.prop("id",$currentElem.prop("id")+current); }); var f = $("#fieldSet"+current); f.html(f.html().replace("fieldSetID", "fieldSet"+current)); $newrunner.appendTo("#mainField"); $newrunner.removeClass("hideElement"); var prevvalue=$("#count").prop("value"); $("#count").prop("value",prevvalue+","+current); }); });  

表单是一个基本的html表单。

除非用户在Intranet上,否则表单将按预期工作。 如果用户在Intranet上,表单将只提交第一个运行者; 通过jQuery添加的所有其他运行程序的数据不会在提交时传输。 这让我很困惑。 在家工作,它完美无缺。 但是,一个客户在内联网的办公室使用它,第一个跑步者工作,但增加的额外跑步者没有。

任何帮助都会受到欢迎。 谢谢。

有些浏览器对DOM对象有特殊的安全性,那么你需要将对象转换为html然后替换ID /名称,最好使用隐藏的模板到你的字段,按照下面的function代码:

基于javascript getTime的唯一ID,以及用于后端的简单数据组