0

有没有办法将元素对象转换为 HTMLOption 对象?我有一个看起来像这样的代码:

var request = getXMLHttpRequest();

            request.onreadystatechange = 
                function (){
                    if(request.readyState == 4 && request.status == 200){
                        var regions = request.responseXML.firstChild;
                        document.getElementById('selectedRegiao').appendChild(regions.childNodes[1]);
                    }
                }

            request.open("get", "getRegions.php?country=" + country,true);
            request.send();

我知道这段代码不起作用并且没有指定,但我认为这足以说明我想要完成的工作。id 为 selectedRegiao 的元素是一个<select>标签。<br> 区域是 XML。它看起来像这样:

<option name="val1">val1</option>
<option name="val2">val2</option>

我想以一种快速简便的方式将其转换为 Option 标签。我知道如何在漫长的道路上做到这一点,但是。有没有直接快速的方法呢?

4

2 回答 2

1

您应该能够使用 XML 从 XML 中获取选项元素

var optsFromXml = regions.getElementsByTagName('option');

这将为您提供一个在 html 中处理的选项集合。就像附加到某个<select>元素:

someSelect.appendChild (
          new Option( optsFromXml[0].getAttribute('name') )
); //=> appends option with value/text from name attribute
于 2011-04-27T19:21:28.687 回答
0

你可以这样做:

var newOpt = new Option(document.getElementById('selectedRegiao').innerHTML, document.getElementById('selectedRegiao').value);

selectObject.options[index] = newOpt;
于 2011-04-27T19:11:05.013 回答