|
|
|
|
- Declaración
- Propiedades específicas de las variables htmlNode
- Creación de un nodo de texto
- Funciones de WLanguage que utilizan variables de htmlNode
htmlNode (Tipo de Variable)
El tipo htmlNode se utiliza para definir todas las características avanzadas de un nodo de un HTML Document. Las características de este nodo pueden definirse y modificarse mediante diferentes propiedades de WLanguage. Observación: Para obtener más información sobre la declaración de este tipo de variable y el uso de propiedades WLanguage, consulte Declarar una 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
Para describir un nodo HTML, el nombre del nodo se puede especificar con TagName Property. <Tag name>: Cadena de caracteres Nombre del nodo a crear. Observaciones Propiedades específicas de las variables htmlNode Las siguientes propiedades se pueden utilizar para manipular un nodo de un HTML Document: | | | Nombre de la propiedad | Tipo utilizado | Efecto |
---|
Atributo | Array de htmlAttribute | Atributos de un nodo htmlNodeElement . | ChildNode | Array de htmlNode variables | Nodo secundario de un nodo htmlNodeElement . | Conde | Integro | Número de elementos con el mismo nombre. Esta propiedad es de solo lectura. | escribir a máquina | Constante de tipo Integer | Tipo de nodo: - htmlNodeComment: Nodo comment.
- htmlNodeCDATA: Nodo CDATA (compatibilidad con xHTML).
- htmlNodeElement: Nodo de elemento, etiqueta HTML.
- htmlNodeTexte: Nodo de texto.
| Exist | booleano | - True si el nodo existe en Document ,
- False en caso contrario.
Esta propiedad es de solo lectura. | Índice | Integro | Índice del nodo en su padre. Esta propiedad es de solo lectura. | InnerHTML | Cadena de caracteres | Código HTML de los subnodos del nodo actual. | OuterHTML | Cadena de caracteres | Código HTML que incluye el nodo actual (incluido el subnodo). Esta propiedad es de solo lectura. | Padre | htmlNode Variable | Nodo padre, NULL si el nodo es la raíz. Esta propiedad es de solo lectura. | TagName | Cadena de caracteres | Nombre de la etiqueta si el nodo es un nodo htmlNodeElement , cadena vacía ("") de lo contrario. | texto | Cadena de caracteres | Contenido del nodo codificado en el carácter actual set. - Si el nodo es del tipo htmlNodeText , htmlNodeComment o htmlNodeCDATA 0054004100, el Property devuelve y modifica el nodo.
- Si el nodo es de tipo htmlNodeElement , el Property devuelve la concatenación del texto de todos los subnodos.
Cuando se asigna un valor a la Property, vacía los subnodos y los reemplaza por un subnodo de texto que contiene ese valor. |
Los siguientes operadores están disponibles para un nodo de tipo htmlNodeElement: - "." operador: El operador "." se utiliza para acceder a los subelementos por nombre de etiqueta.
- ":" operador: El operador ":" se utiliza para acceder a los atributos por su nombre.
- [] operador: Este operador se utiliza para acceder a los subelementos hermanos del mismo nombre por el índice.
- [] operador: Este operador se utiliza para acceder a los subelementos por nombre de etiqueta.
htmlNodeElement los nodos pueden contener subnodos. Bucle a través de subnodos - "FOR EACH x OF NodeVariable" se utiliza para recorrer todos los subnodos.
- "FOR EACH x OF NodeVariable IN-DEPTH" se utiliza para recorrer recursivamente todos los subnodos..
Creación de un nodo de texto Un nodo de texto puede declararse utilizando una de las siguientes sintaxis: - Declaración implícita:
o is htmlNode o.Text = "A" - Declaración explícita:
o is htmlNode o.Type = htmlNodeText o.Text = "A"
Funciones de WLanguage que utilizan variables de htmlNode - sintaxis estándar:
| | HTMLFindElementByClass | Busca elementos cuyo atributo "class" coincida con un valor específico en una Document HTML (o en un nodo HTML). | HTMLFindElementByID | Busca el elemento cuyo atributo "ID" coincide con un valor específico en una Document HTML (o en un nodo HTML). | HTMLFindElementByName | Busca elementos cuyo atributo "name" coincida con un valor específico en un Document HTML (o en un nodo HTML). | HTMLFindElementByTag | Busca elementos que correspondan a una etiqueta en un Document HTML (o un nodo HTML). | HTMLInsertAfter | Añade un nodo después del nodo especificado en un HTML Document. | HTMLInsertBefore | Añade un nodo antes del nodo especificado en un HTML Document. | HTMLInsertFirstChild | Añade un hijo al principio de los hijos del nodo actual en un HTML Document. | HTMLInsertLastChild | Añade un hijo después del hijo del nodo actual en un HTML Document. | HTMLModifyAttribute | Añade o cambia un atributo del nodo actual del HTML Document. | HTMLRemove | Elimina el nodo especificado y sus descendientes en un HTML Document. | HTMLRemoveAttribute | Elimina un atributo determinado | HTMLRemoveChild | Elimina un nodo dado en el nodo actual de un HTML Document. | HTMLUnwrapAllChildren | Elimina el nodo especificado en una Document HTML sin borrar sus hijos, que ocupan su lugar. | HTMLWrap | Envuelve el nodo especificado en un nodo dado de un HTML Document. | HTMLWrapAllChildren | Envuelve todos los hijos del nodo dado en un nuevo nodo en un HTML Document. |
- sintaxis con prefijo:
| | .eliminar | Elimina el nodo especificado y sus descendientes en un HTML Document. | .FindElementByClass | Busca elementos cuyo atributo "class" coincida con un valor específico en un nodo HTML. | .FindElementByName | Busca elementos cuyo atributo "name" coincida con un valor específico en un nodo HTML. | .FindElementByTag | Busca elementos que correspondan a una etiqueta en un nodo HTML. | .InsertAfter | Añade un nodo después del nodo especificado en un HTML Document. | .InsertBefore | Añade un nodo antes del nodo especificado en un HTML Document. | .InsertFirstChild | Añade un hijo al principio de los hijos del nodo actual en un HTML Document. | .InsertLastChild | Añade un hijo después del hijo del nodo actual en un HTML Document. | .ModifyAttribute | Añade o cambia un atributo del nodo actual del HTML Document. | .RemoveAttribute | Elimina un atributo determinado | .RemoveChild | Elimina un nodo dado en el nodo actual de un HTML Document. | .UnwrapAllChildren | Elimina el nodo especificado en una Document HTML sin borrar sus hijos, que ocupan su lugar. | .Wrap | Envuelve el nodo especificado en un nodo dado de un HTML Document. | .WrapAllChildren | Envuelve todos los hijos del nodo dado en un nuevo nodo en un HTML Document. | FindElementID | Busca el elemento cuyo atributo "ID" coincide con un valor específico en un nodo HTML. |
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|