recherche
Maisoninterface Webtutoriel CSSLiaison de données en HTML_CSS/HTML

信息来源:Wayne_Deng的专栏

有没想过在java script中使用recordset?原来在客户端操作数据也可以这样简单,定义一个数据源,将数据绑定在各种tag上,实现应用程序般的效果,酷毙了!(首先申明一点,文章的内容全部来自msdn,不过用我自己的话总结而已。)

先看看这样两个例子:
http://msdn.microsoft.com/workshop/samples/author/databind/dbevts.htm
http://msdn.microsoft.com/workshop/samples/author/databind/dbupdate.htm
不得不又一次佩服微软。

这个是DataBinding的架构:
架构
当然实现数据绑定有下面几步:

第一步,定义数据源
从IE4.0起,就支持下面四种数据源:



Tabular Data Control (TDC)
TDC提供了一个简单的访问带有格式的文本数据的方法,一般是csv文件。
下面是一个简单的示例:

    ID=dsoComposer WIDTH=0 HEIGHT=0>
    



Remote Data Service (RDS)
远程数据服务,直接访问远程服务器端的数据,Internet Explorer 4.0. RDS 通过OLE-DB 或 Open Database Connectivity (ODBC)来实现。

示例:

    ID=dsoComposer HEIGHT=0 WIDTH=0>
    
    
    

不过感觉有点安全性的问题,因为客户端能看到这段代码。

XML Data Source
XML就不多说了,在IE4.0中这样使用:
    CODE="com.ms.xml.dso.XMLDSO.class"
    ID="xmldso"
    WIDTH="0"
    HEIGHT="0"
    MAYSCRIPT="true">
    


Internet Explorer 5以上可以这样:



另外IE还提供了一个XML数据岛的概念:XML Data Islands.

 
MSHTML Data Source
html数据页示例:

Hector


Berlioz
1803

Modest


Moussorgsky




Liszt
1811

一旦定义可以这样访问:



.第二步:绑定数据到HTML元素上
一般都是通过tag中的datasrc和datafld实现绑定的。例如:







这个是绑定表格的示例:
http://msdn.microsoft.com/workshop/samples/author/databind/dbtable.htm

其中数据来源:

           
 
 

绑定的table


   
   


   
   
   
   
   


First Last Birth Death Origin
Berlioz 1803 1869 France
Modeste Moussorgski 1839 1881 Russie
Franz Liszt 1811 1886 France
Antonio Vivaldi 1678 1741 Italie
Johann Sebastian Bach 168 5 1750 Allemagne
Ludwig van Beethoven 1 770 1827 Allemagne
Wolfgang Amadeus Mozart 1756 1791 Autriche
Joseph Haydn 1732 1809 Allemagne
Claude Debussy 1862 1918 France


La troisième étape : ajout dynamique, suppression, etc. de données (modèle objet)
Bien sûr, la liaison peut être dynamique :
Dans le script :
span1.dataSrc = "#dsoComposer"
span1.dataFld = "compsr_first" ;

html est comme ceci :

Et vous pouvez accéder à l'ado de la source de données :
var oRecordSet = dsoComposer.recordset
Of bien sûr, il y a oRecordSet .MoveNext et ainsi de suite.

Par exemple :
onclick="tdcComposers.recordset.MoveFirst()"> INPUT ID=cmdNavPrev TYPE=BUTTON VALUE=" onclick="tdcComposers.recordset.MovePrevious();
if (tdcComposers.recordset.BOF)
tdcComposers.recordset.MoveFirst();" > ;
onclick="tdcComposers.recordset.MoveNext();
if (tdcComposers.recordset.EOF)
tdcComp osers .recordset .MoveLast();">
onclick="tdcComposers.recordset.MoveLast()">

Il peut également être utilisé comme ceci :
>Ajoutez et supprimez simplement des enregistrements : oRecordSet.AddNew() et oRecordSet.Delete().

Étape 3 : Répondre à divers événements de données (modèle d'événement)
Comment gérer les modifications correspondantes après les modifications de données ?
La méthode fournie dans msdn est la suivante :
>Voici la liste des noms d'événements :

Les bulles d'événements annulables s'appliquent aux éléments introduits dans la version Internet Explorer
onbeforeupdate True True Éléments liés 4.0
onafterupdate True False Éléments liés 4.0
onrowenter True False D SO 4.0
onrowexit True False DSO 4.0
onbeforeunload False False window 4.0
ondataavailable True False DSO 4.0
ondatasetcomplete True False DSO 4.0
ondatasetchanged True False DSO 4.0
onerrorupdate True True éléments liés 4.0
onreadystatechange True False DSO 4.0
oncellchange True False DSO 5.0
onrowsinserted True False DSO 5.0
onrowsdelete True False DSO 5.0



Et si ?
Je pense que http://msdn.microsoft.com/workshop/samples/author/databind/dbevts.htm est un exemple d'application relativement complet si vous l'étudiez attentivement, vous gagnerez certainement quelque chose.

Il existe de nombreux exemples sur Internet d'utilisation de la liaison de données pour implémenter la pagination. En fait, la liaison de données peut faire plus de choses, n'est-ce pas ? Il devrait y avoir de très grandes applications dans les clients riches, comme la création de grilles de données très complexes.

Ce que je souhaite en savoir plus maintenant, c'est comment réaliser facilement une synchronisation avec le serveur, car la liaison de données du client n'a aucun impact sur le serveur (vous pouvez générer des sources de données à partir du serveur, mais les opérations sur le le client ne reviendra pas automatiquement au serveur), msdn indique que RDS peut être utilisé, mais cette méthode est trop maladroite et dangereuse.


Déclaration
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
Comment nous avons tagué Google Fonts et créé des goofont.comComment nous avons tagué Google Fonts et créé des goofont.comApr 12, 2025 pm 12:02 PM

Goofonts est un projet parallèle signé par un développeur-femme et un concepteur-mari, tous deux de grands fans de typographie. Nous avons marqué Google

Articles de développement Web intemporelsArticles de développement Web intemporelsApr 12, 2025 am 11:44 AM

Pavithra Kodmad a demandé aux gens des recommandations sur ce qu'ils pensaient être certains des articles les plus intemporels sur le développement Web qui ont changé

L'accord avec l'élément de sectionL'accord avec l'élément de sectionApr 12, 2025 am 11:39 AM

Deux articles ont publié exactement le même jour:

Pratiquez des requêtes GraphQL avec l'API de l'état de JavaScriptPratiquez des requêtes GraphQL avec l'API de l'état de JavaScriptApr 12, 2025 am 11:33 AM

Apprendre à créer des API GraphQL peut être assez difficile. Mais vous pouvez apprendre à utiliser les API GraphQL en 10 minutes! Et il se trouve que je suis parfait

CMSS au niveau des composantsCMSS au niveau des composantsApr 12, 2025 am 11:09 AM

Lorsqu'un composant vit dans un environnement où les données interrogent les données qui vivent à proximité, il y a une ligne assez directe entre le composant visuel et le

Définissez le type sur un cercle ... avec chemin de décalageDéfinissez le type sur un cercle ... avec chemin de décalageApr 12, 2025 am 11:00 AM

Ici, une rotation CSS légitime de Yuanchuan. Il y a ce chemin de décalage de la propriété CSS. Il était une fois, il s'appelait le chemin de mouvement, puis il a été renommé. je

What does "revert" do in CSS?What does "revert" do in CSS?Apr 12, 2025 am 10:59 AM

Miriam Suzanne explique dans une vidéo de développeur de Mozilla sur le sujet.

Les amoureux modernesLes amoureux modernesApr 12, 2025 am 10:58 AM

J'adore les trucs comme ça.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft