컨테이너를 복사할 때 가장 최근에 업데이트된 양식 항목을 Firefox에 "고정"하려면 어떻게 해야 합니까?
-
09-06-2019 - |
문제
다음과 같은 약간의 JavaScript를 사용하여 "복제"하는 입력 상자가 포함된 dl이 있습니다.
var newBox = document.createElement('dl');
var sourceBox = document.getElementById(oldkey);
newBox.innerHTML = sourceBox.innerHTML;
newBox.id = newkey;
document.getElementById('boxes').appendChild(columnBox);
IE에서는 sourceBox의 양식이 newBox에 복제되어 사용자가 제공한 값으로 완성됩니다.Firefox에서는 원래 sourceBox에 입력한 마지막 값이 newBox에 없습니다.이것을 "막대기"로 만들려면 어떻게 해야 합니까?
해결책
다른 팁
당신은 cloneNode
방법.내용을 복사하는 것이 더 나은 작업을 수행할 수 있습니다.또한 대부분의 경우 더 빨라야 합니다.
var newBox;
var sourceBox = document.getElementById(oldkey);
if (sourceBox.cloneNode)
newBox = sourceBox.cloneNode(true);
else {
newBox = document.createElement(sourceBox.tagName);
newBox.innerHTML = sourceBox.innerHTML;
}
newBox.id = newkey;
document.getElementById('boxes').appendChild(newBox);
고마워요 여러분.
나는 다음을 사용하여 일할 일을 얻었습니다. 원기 그리고 변화 document.getElementById(이전 키)에게 $(이전 키)
<script src="j/prototype.js" type="text/javascript"></script>
var newBox;
var sourceBox = $(oldkey);
if (sourceBox.cloneNode)
newBox = sourceBox.cloneNode(true);
else {
newBox = document.createElement(sourceBox.tagName);
newBox.innerHTML = sourceBox.innerHTML;
}
newBox.id = newkey;
document.getElementById('boxes').appendChild(newBox);
제휴하지 않습니다 StackOverflow