It is not allow that two variables add same object. This is a segment.
for (var i = 0; i < categories.length; i++) {
var categoryId= categories[i].getElementsByTagName("CategoryID")[0].firstChild.nodeValue;
var categoryName = categories[i].getElementsByTagName("CategoryName")[0].firstChild.nodeValue;
var eleOpt = document.createElement("option");
var txtOpt = document.createTextNode(categoryName);
var catelogryAddOption = new Option(categoryName, categoryId);
sel.options.add(catelogryAddOption);
sel2.options.add(catelogryAddOption); //Here is an exception.
}
However, it can work when I declare other Object, which is catelogryAddOption2.
enter code herefor (var i = 0; i < categories.length; i++) {
var categoryId= categories[i].getElementsByTagName("CategoryID")[0].firstChild.nodeValue;
var categoryName = categories[i].getElementsByTagName("CategoryName")[0].firstChild.nodeValue;
var eleOpt = document.createElement("option");
var txtOpt = document.createTextNode(categoryName);
var catelogryAddOption = new Option(categoryName, categoryId);
sel.options.add(catelogryAddOption);
var catelogryAddOption2 = new Option(categoryName, categoryId); //This is catelogryAddOption2
sel2.options.add(catelogryAddOption2); // It can work
}
Although the problem is solved, I don't understand the reason.
Does anyone explain it? Thanks.