动态添加新字段将重置先前字段中的值

Dynamically adding new fields resets values in previous fields

本文关键字:字段 新字段 添加 动态      更新时间:2023-09-26

我使用HTML/Javascript组合动态添加字段。

下面是它的jsfiddle: http://jsfiddle.net/kM9Yg/2/

我的问题是,如果我在一个字段中输入值,然后单击Add More按钮,一个新的字段被添加,但以前字段的值被重置。

添加按钮类型为<input type="button"/>而非<input type="reset" />

有什么办法可以防止这种情况发生吗?

使用DOM方法,而不是innerHTML。DOM方法是标准化的,而innerHTML不是。有些浏览器会将当前值反映为默认值,有些则不会。

你可以这样做:

var el, oEl = document.getElementById('divToClone');
if (oEl) {
  el = oEl.cloneNode(true);
  // code here to fix duplicate ids and
  // set style.display = '' so it's visible
  oEl.parentNode.appendChild(el);
}