getNamedItem Method
Retrieves the attribute with the specified name.
var objXMLDOMNode = oXMLDOMNamedNodeMap.getNamedItem(name);
Parameters
Return Value
An object. Returns IXMLDOMNode object for the specified attribute. Returns Nothing if the attribute node is not in this collection.
Example
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.6.0"); var nodeBook, nodeId; xmlDoc.async = false; xmlDoc.load("books.xml"); if (xmlDoc.parseError.errorCode != 0) { var myErr = xmlDoc.parseError; WScript.Echo("You have error " + myErr.reason); } else { nodeBook = xmlDoc.selectSingleNode("//book"); nodeId = nodeBook.attributes.getNamedItem("id"); WScript.Echo(nodeId.value); }
Output
When used with the sample XML file (books.xml), this example returns "bk101", the value of the id attribute for the first instance of the <book> element in books.xml.
HRESULT getNamedItem(
BSTR name,
IXMLDOMNode **namedItem);
Parameters
Return Values
Example
IXMLDOMNode *pIXMLDOMNode = NULL; IXMLDOMNamedNodeMap *pIXMLDOMNamedNodeMap = NULL; BSTR bstrAttributeName = ::SysAllocString(_T("dateModified")); IXMLDOMElement *pIXMLDOMElement = NULL; IXMLDOMDocument *pIXMLDOMDocument = NULL; VARIANT varValue; try { // Create an instance of DOMDocument and initialize pIXMLDOMDocument. // Load/create an XML fragment. hr = pIXMLDOMDocument->get_documentElement(&pIXMLDOMElement); SUCCEEDED(hr) ? 0 : throw hr; if(pIXMLDOMElement) { hr = pIXMLDOMElement->get_attributes(&pIXMLDOMNamedNodeMap); if(SUCCEEDED(hr) && pIXMLDOMNamedNodeMap) { hr = pIXMLDOMNamedNodeMap->getNamedItem(bstrAttributeName, &pIXMLDOMNode); if(SUCCEEDED(hr) && pIXMLDOMNode) { pIXMLDOMNode->get_nodeValue(&varValue); ::MessageBox(NULL, _bstr_t(varValue), _T("Item Value"), MB_OK); pIXMLDOMNode->Release(); pIXMLDOMNode = NULL; } pIXMLDOMNamedNodeMap->Release(); pIXMLDOMNamedNodeMap = NULL; } pIXMLDOMElement->Release(); pIXMLDOMElement = NULL; } ::SysFreeString(bstrAttributeName); bstrAttributeName = NULL; } catch(...) { if(bstrAttributeName) ::SysFreeString(bstrAttributeName); if(pIXMLDOMElement) pIXMLDOMElement->Release(); if(pIXMLDOMNamedNodeMap) pIXMLDOMNamedNodeMap->Release(); if(pIXMLDOMNode) pIXMLDOMNode->Release(); DisplayErrorToUser(); } // Release pIXMLDOMDocument when finished with it.