Maison interface Web tutoriel HTML Avantages complémentaires entre XML et HTML (Partie 2)

Avantages complémentaires entre XML et HTML (Partie 2)

May 02, 2017 pm 03:12 PM

Généralement, l'ensemble de résultats que nous interrogeons à partir de la base de données peut être très volumineux, donc lors du retour du serveur au client, les données seront divisées en plusieurs pages pour être livrées respectivement. À ce stade, vous pouvez utiliser l'attribut DATAPAGESIZE dans l'élément TABLE pour spécifier le nombre d'entrées de jeu d'enregistrements que contient chaque page.

Par exemple :

<TABLE DATASRC=“#xmldso” DATAPAGESIZE=10>
Copier après la connexion

Évidemment, si le format de données XML est symétrique, l'effet sera très bon, qu'il soit mappé à un jeu d'enregistrements ADO ou lié à une table. élément bon. Dans les applications pratiques, il existe de nombreux exemples de données XML asymétriques. Par exemple, un livre peut avoir plusieurs auteurs, ce qui entraînera certains problèmes de mappage et de liaison. La solution au problème consiste à utiliser l’imbrication. Chaque ligne du tableau correspond toujours à un élément principal, et chaque colonne correspond également à un sous-élément. Pour les éléments répétés, utilisez des tableaux imbriqués. Supposons que dans books.xml, l'auteur du premier livre est Dean Straight et que les auteurs du deuxième livre sont Charlotte Cooper, Shelley Burke et Regina Murphy. À ce stade, le processus de liaison est le suivant :

● Créez un élément TABLE et attribuez l'ID de l'îlot de données à l'attribut DATAFLD

● Pour les éléments XML individuels, tels que <isbn> ; ;, créez un élément TD et définissez l'attribut DATAFLD correspondant ;

● Pour les éléments répétés, imbriquez un tableau à l'intérieur de l'élément TD

● Afficher les informations sur l'auteur dans une seule ligne et une seule colonne ; .

Notez que l'attribut DATAFLD ici doit être défini sur "$TEXT",

pour garantir que le contenu de l'élément imbriqué est tous affiché dans l'élément spécifié.

Le code HTML complet est le suivant :

&lt;TABLE BORDER=1 DATASRC=“#xmldso”&gt;

&lt;THEAD&gt;&lt;TR&gt;&lt;TH&gt;Title&lt;/TH&gt;

&lt;TH&gt;ISBN&lt;/TH&gt;

&lt;TH&gt;Author&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;

&lt;TBODY&gt;

&lt;TR&gt;&lt;TD&gt;

&lt;p DATAFLD=“title”&gt;&lt;/p&gt;&lt;/TD&gt;

&lt;TD&gt;&lt;p DATAFLD=“isbn”&gt;

&lt;/p&gt;&lt;/TD&gt;

&lt;TD&gt;

&lt;TABLE BORDER=0 DATASRC=“#xmldso” DATAFLD=“author”&gt;

&lt;TR&gt;&lt;TD&gt;&lt;SPAN DATAFLD=“$Text”&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;

&lt;/TABLE&gt;

&lt;/TD&gt;

&lt;/TR&gt;&lt;/TBODY&gt;

&lt;/TABLE&gt;
Copier après la connexion


En fait, la meilleure situation lors de l'utilisation de DSO est pour les données à structure symétrique, et A Un moyen plus efficace de gérer les données asymétriques consiste à utiliser la technologie DOM que nous présenterons plus tard.

Application de la technologie DSO

1. Accéder aux attributs d'un élément

Utiliser DSO pour accéder aux attributs d'un élément est très simple Vous pouvez directement gérer les attributs en tant que sous-éléments.

Par exemple :

&lt;book isbn=“9-001-122-12”&gt;
……
&lt;/book&gt;
Copier après la connexion

De cette façon, lors de la liaison à un tableau HTML, il peut être traité directement par sous-élément :

&lt;TD&gt;&lt;SPAN DATAFLD=“isbn”&gt; &lt;/SPAN&gt;&lt;/TD&gt;
Copier après la connexion

Si le nom de l'attribut et le nom du sous-élément sont identiques, ajoutez "!" devant le nom de l'élément pour les distinguer. 2. Parcours du jeu d'enregistrements

L'un des grands avantages du traitement DSO des îlots de données XML en tant que jeux d'enregistrements ADO est que vous pouvez utiliser diverses méthodes fournies par ADO pour accéder à la source de données, en particulier lorsque l'îlot de données est combiné avec quelque chose. comme SPAN, p Lors de la liaison avec des éléments HTML tels que INPUT. Généralement, ces éléments affichent le premier enregistrement du jeu d'enregistrements. Pour parcourir et parcourir le jeu d'enregistrements, vous pouvez utiliser les méthodes ADO : Move, MoveFirst, MoveLast, MoveNext et MovePRevious. Par exemple, si vous créez une fonction de réponse par bouton, tant que l'utilisateur clique sur le bouton « Suivant », les enregistrements correspondants peuvent être parcourus un par un.

Par exemple :

&lt;XML ID=“xmldso” SRC=“books.xml”&gt;
&lt;/XML&gt;
Sub btnNext_onclick()
xmldso.RecordSet.MoveNext
End Sub
Copier après la connexion

3. Combinaison avec le langage de script

Certains utilisateurs sont plus habitués à écrire en langage de script. La technologie DSO peut également être bien combinée avec divers scripts.

Par exemple (en prenant VB Script comme exemple), lors de l'accès au jeu d'enregistrements, le code est le suivant :

Dim rsBooks
Set rsBooks = xmldso.RecordSet
访问字段(子元素)的值:
Dim sTitle
sTitle = rsBooks(“title”)
Copier après la connexion

Vous pouvez utiliser le innerText et Attributs innerHTML pour transmettre la valeur obtenue à l'élément HTML. Par exemple, il existe un élément p nommé pTitle, et le code d'affectation est le suivant :

pTitle.innerTEXT = sTitle
Copier après la connexion

Les scripts peuvent également gérer de nombreux événements DSO. Le tableau suivant en répertorie certains :

La façon de gérer divers événements dans un script consiste à utiliser l'attribut FOR dans la balise <SCRIPT> pour spécifier l'ID de l'îlot de données XML et à utiliser l'attribut EVENT pour déterminer le type d'événement.

Par exemple, pour obtenir le nombre d'entrées dans l'ensemble d'enregistrements :

&lt;SCRIPT Language=“VB Script” FOR=“xmldso” EVENT=“onDataAvailable”&gt;

lblRecords.value = booklist.RecordSet.RecordCount

&lt;/SCRIPT&gt;
Copier après la connexion

En plus d'afficher les données d'enregistrement, le programme de script peut également rapidement interroger, trier et modifier le jeu d'enregistrements, etc. fonctionner. Cependant, il convient de souligner que bien que la technologie ADO fournisse des méthodes telles que SortColumn et SortAscending pour trier les données XML, l'effet n'est pas aussi bon que l'opération de tri en XSL, il est donc recommandé d'utiliser pleinement la technologie XSL pour réaliser cette partie de la fonction.
Les fonctions restantes, telles que l'utilisation de scripts pour effectuer des opérations telles que l'ajout, la suppression et la modification de jeux d'enregistrements, ou l'affichage de tableaux HTML dans des pages, etc., ne sont pas expliquées ici une par une. L'utilisation est similaire à la précédente. opérations. Enfin, il convient de noter que toutes les opérations sur les objets DSO sont effectuées côté utilisateur, qui est en fait une copie de l'objet de données du serveur. L'avantage est que cela évite au réseau de supporter la charge des communications de données volumineuses. Mais pour le moment, les opérations effectuées par le client n'ont aucun impact sur les données stockées sur le serveur. Si vous souhaitez modifier les enregistrements du serveur, vous devez utiliser la technologie d'échange de données entre le client et le serveur. Nous en discuterons dans. l’avenir. Faites une introduction.                                                                          

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Tableau imbriqué en HTML Tableau imbriqué en HTML Sep 04, 2024 pm 04:49 PM

Tableau imbriqué en HTML

Bordure de tableau en HTML Bordure de tableau en HTML Sep 04, 2024 pm 04:49 PM

Bordure de tableau en HTML

Marge gauche HTML Marge gauche HTML Sep 04, 2024 pm 04:48 PM

Marge gauche HTML

Disposition du tableau HTML Disposition du tableau HTML Sep 04, 2024 pm 04:54 PM

Disposition du tableau HTML

Déplacer du texte en HTML Déplacer du texte en HTML Sep 04, 2024 pm 04:45 PM

Déplacer du texte en HTML

Liste ordonnée HTML Liste ordonnée HTML Sep 04, 2024 pm 04:43 PM

Liste ordonnée HTML

Bouton HTML onclick Bouton HTML onclick Sep 04, 2024 pm 04:49 PM

Bouton HTML onclick

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Comment analysez-vous et traitez-vous HTML / XML dans PHP?

See all articles