信息来源: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文件。
下面是一个简单的示例:
Remote Data Service (RDS)
远程数据服务,直接访问远程服务器端的数据,Internet Explorer 4.0. RDS 通过OLE-DB 或 Open Database Connectivity (ODBC)来实现。
示例:
不过感觉有点安全性的问题,因为客户端能看到这段代码。
XML Data Source
XML就不多说了,在IE4.0中这样使用:
Internet Explorer 5以上可以这样:
另外IE还提供了一个XML数据岛的概念:XML Data Islands.
MSHTML Data Source
html数据页示例:
Hector
Modest
Moussorgsky
1811
一旦定义可以这样访问:
.第二步:绑定数据到HTML元素上
一般都是通过tag中的datasrc和datafld实现绑定的。例如:
和
这个是绑定表格的示例:
http://msdn.microsoft.com/workshop/samples/author/databind/dbtable.htm
其中数据来源:
绑定的table
First | Last | Birth | Death | Origin |
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.

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

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é

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

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

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

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

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


Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

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
L'éditeur open source le plus populaire

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
Un éditeur IDE gratuit et puissant lancé par Microsoft