- Properties specific to the description of htmlNode variables
- WLanguage functions that use htmlNode variables
htmlNode (Type of variable) In french: htmlNoeud
The htmlNode type is used to define all the advanced characteristics of a node of an HTML document. The characteristics of this node can be defined and changed using different WLanguage properties. Remark: For more details on the declaration of this type of variable and the use of WLanguage properties, see Declaring a variable.
MyDocument is htmlDocument // Retrieves the document from the HTML Display control MyDocument = HTM_Source.DisplayedValue // Get delivery costs when choosing pickup points depending on the weight // Get the countries // In thead / 2nd TR / 3 first TD sCountry1, sCountry2, sCountry3 is string // Get array of headers arrHeader is array of htmlNode = MyDocument.FindElementByTag("thead") // On the first element, take the second child (second TR) // The first child of this TR is the TD of the first country // Inside the TD, there can be other tags (span, p) to manage styles // But the final content is in there, so we can retrieve the InnerHTML from the TD, and // Convert it "directly" to text sCountry1 = HTMLToText(arrHeader[1].tr[2].td[1]..InnerHTML) // The second child of this TR, is the TD of the second country sCountry2 = HTMLToText(arrHeader[1].tr[2].td[2]..InnerHTML) // The third child of this TR is the TD of the third country sCountry3 = HTMLToText(arrHeader[1].tr[2].td[3]..InnerHTML) sWeight, sPricingCountry1, sPricingCountry2, sPricingCountry3 are strings // Modifies the table column titles TABLE_Pricing.COL_Country1.Caption = sCountry1 TABLE_Pricing.COL_Country2.Caption = sCountry2 TABLE_Pricing.COL_Country3.Caption = sCountry3 FOR i = 1 _TO_ 9 // Get the weight and prices per country sWeight = MyDocument.html.body.div.div.table.tbody.tr[i].td[1]..Text sPricingCountry1 = MyDocument.html.body.div.div.table.tbody.tr[i].td[3]..Text sPricingCountry2 = MyDocument.html.body.div.div.table.tbody.tr[i].td[4]..Text sPricingCountry3 = MyDocument.html.body.div.div.table.tbody.tr[i].td[5]..Text TABLE_Pricing.AddLine(sWeight, sPricingCountry1, sPricingCountry2, sPricingCountry3) END
Remarks Properties specific to the description of htmlNode variables The following properties can be used to handle a node of an HTML document: | | | Property name | Type used | Effect |
---|
Attribute | Array of htmlAttribute | Attributes of an htmlNodeElement node. | ChildNode | Array of htmlNode variables | Child node of an htmlNodeElement node. | Count | Integer | Number of elements with the same name. This property is read-only. | Exist | Boolean | - True if the node exists in the document,
- False otherwise.
This property is read-only. | Index | Integer | Index of the node in its parent. This property is read-only. | InnerHTML | Character string | HTML code of the sub-nodes in the current node. | OuterHTML | Character string | HTML code that includes the current node (including the sub-node). This property is read-only. | Parent | htmlNode variable | Parent node, NULL if the node is the root. This property is read-only. | TagName | Character string | Name of the tag if the node is an htmlNodeElement node, empty string ("") otherwise. | Text | Character string | Contents of the node encoded in the current character set. - If the node is of type htmlNodeText, htmlNodeComment or htmlNodeCDATA, the property returns and modifies the node.
- If the node is of type htmlNodeElement, the property returns the concatenation of the text of all subnodes.
When a value is assigned to the property, it empties the subnodes and replaces them with a text subnode containing that value. | Type | Integer constant | Type of node: - htmlNodeComment: Comment node.
- htmlNodeCDATA: CDATA Node (XHTML compatibility).
- htmlNodeElement: Element node, HTML tag.
- htmlNodeTexte: Text node.
|
The following operators are available for a node of type htmlNodeElement: - "." operator: The "." operator is used to access subelements by tag name.
- ":" operator: The ":" operator is used to access attributes by name.
- [ <index> ] operator: This operator is used to access sibling subelements of the same name by index.
- [ <name> ] operator: This operator is used to access subelements by tag name.
htmlNodeElement nodes can contain subnodes. Loop through subnodes - "FOR EACH x OF NodeVariable" is used to loop through all the subnodes.
- "FOR EACH x OF NodeVariable IN-DEPTH" is used to recursively loop through all the subnodes.
WLanguage functions that use htmlNode variables - standard syntax:
| | HTMLFindElementByTag | Searches for elements that correspond to a tag in an HTML document (or an HTML node). | HTMLFindElementByClass | Searches for elements whose "class" attribute matches a specific value in an HTML document (or in an HTML node). | HTMLFindElementByID | Searches for the element whose "ID" attribute matches a specific value in an HTML document (or in an HTML node). | HTMLFindElementByName | Searches for elements whose "name" attribute matches a specific value in an HTML document (or in an HTML node). | HTMLUnwrapAllChildren | Deletes the specified node in an HTML document without deleting its children, which take its place. | HTMLWrap | Wraps the specified node in a given node of an HTML document. | HTMLWrapAllChildren | Wraps all children of the given node in a new node in an HTML document. | HTMLInsertAfter | Adds a node after the specified node in an HTML document. | HTMLInsertBefore | Adds a node before the specified node in an HTML document. | HTMLInsertLastChild | Adds a child after the child of the current node in an HTML document. | HTMLInsertFirstChild | Adds a child at the start of the children of the current node in an HTML document. | HTMLModifyAttribute | Adds or changes an attribute of the current node of the HTML document. | HTMLRemove | Removes the specified node and its descendants in an HTML document. | HTMLRemoveAttribute | Removes a given attribute | HTMLRemoveChild | Removes a given node in the current node of an HTML document. |
- prefix syntax:
This page is also available for…
|
|
|
|