使用して[ターン]データおよびattRとの間の差

ATTR()の使用

attrが()プロパティ値を取得します。

attrを属性の取得()、そう(セレクタ).ATTR(attrNameのを)$することができます 。戻り値は常に文字列型であることに注意してください! 
例えば:attrが()属性年齢の値が「23」で取得するには、属性isworkの値が「真」です。 
また、所望の戻り値を与えることができるATTR()が入ってくるのattrname場合、そのATTR(「名前」)およびattR(「NAME」)に影響されないことに留意されたいです。

< divのクラス= "カード" ID = "JQ-attrの" 名前= "ZX" AGE = "23" isWork = "true"を> </ DIV > 
$( '#のJQ-ATTR')。attrの( '年齢') ; // "23" 
$( '#JQ-ATTR')のattr( 'iswork')。//「真」

プロパティを追加および変更するのattr()

ATTR(attrNameで、値):attrがAPIへのパラメータの三種類を転送することができる特性を変更するための三つの方法サポート  ATTR(attrNameで、関数)、ATTR(OBJ)を。
第2のパラメータは、関数は、関数が実行され、およびattR()戻り値として実行結果である場合。 
({:値1、ATTR2 ATTR1 ATTR(OBJ)ATTR、複数のコールのATTR(attrNameで、値)に相当するようなものである :値2})、 ATTRと等価(ATTR1、値1).ATTR(  ATTR1、値2)、
JavaScriptコード、 attrが()動的プロパティの値を変更して、渡された値がオブジェクトである場合は、新しいプロパティを追加し、最終的に取得します↓↓↓

変数$エル= $( '#JQ-ATTR'); 
$ el.attr( 'ATTR1'、{名: 'チェン'})。
$ el.attr( 'ATTR1'); // "[対象オブジェクト" 

$ el.attr( 'ATTR2'、[1、2、3])。
$ el.attr( 'ATTR2'); // "1、2、3" 

$ el.attr( 'attr3'、NULL); 
$ el.attr( 'attr3'); // "未定義" 

(未定義の'attr4')$ el.attr。
$ el.attr( 'attr4'); //「未定義」

データ型が基本値である場合、対応する文字列が直接返さ、見られるが、「未定義」NULL値を返すことができるように「NULL」ではありません。値がオブジェクトである場合、そのオブジェクトのtoString()ATTR()の戻り値であり、実行結果と呼ばれています。

データ()の使用

データは、()バインドされたデータと新しいデータを変更します

およびattR()は同様に、ページが生成されたときにデータをバインドすることができ、実際の名前は、要素データ - *属性に追加されます。

< divのクラス= "カード" ID = "JQ-attrの" データ名= "陳" データ-AGE = "23" isWork = "true"を> </ DIV >

JavaScriptから、データ()そのデータを変更することができるので:データ(キー、値)、およびデータ(OBJ)。後者は、データ(KEY1、値1).DATA(KEY2、値2)と等価です。さらに別のモードでは、以下の

データel.data $ = VAR(); 
data.attr = 10; 
()データを修正するためにデータを使用するときに型の値が未定義の場合、そのデータを保存または更新されることはありません。
el.data $( '学校'、未定義の); 
$ el.data()hasOwnPropertyを( '学校');.に真// 
$ el.data(未定義'のattr'); 
$ el.data( 'ATTR') ; // 10

データ()データを取得します

対応するキー値を取得する文字列キー、すなわち、データ(キー)、またはデータ()[キー]を通過するデータ()呼び出しパラメータに。しかし、それに注意し、データ()バインディングデータがない場合はundefinedを返すので、データ(キー)の方法より安全なことがあります。およびattR()戻り値文字列が変換のために同じタイプのデータ()番号が静的に結合され、ブール値、オブジェクト、配列、nullではありません。いくつかの例の下を参照してください。

< DIV クラス= "ボックス" ID = "JQデータ" データ名= "ZX" データ-AGE = "23" データisWork = "真" データFUNC = "関数(){}" データ一覧= "{ "リスト名": "エリック・チェン"}データundefinedkey = "未定義" データnullkey = "NULL" データ最終値= "100" > </ DIV > 
VAR $ EL = $( '#jq-データ'); 
$ el.data( '年齢'); // 23 
$ el.data( 'AGE'); //未定義
の$ el.data( 'isWork'); //真
の$ el.data( 'FUNC'); 
// "機能(){}" $のel.data( 'リスト'); // OBJ { "リスト名": "エリック・チェン"}
// "関数(){}" $のel.data( 'undefinedkey')。// "未定義" 
の$ el.data( 'nullkey'); // ヌル 
の$ el.data( 'lastValue'); // 100 
$ el.data( 'lastvalue'); //未定義

静的データでデータを取得するために、HTMLデータにバインドした場合()、キーは、このようなデータの代わりにデータのみによるデータバインディング-AGE =「23」、(「年齢」)(「AGEなど、すべて小文字でなければなりません「)。また、そのデータ-最後の値=「100点に注意してください 、」 データのみ(「lastValue」)またはデータ(「最後の値」)で  。
JavaScriptでデータを()を使用して修飾された場合、再取得の値が指定されたキーに応じて、厳密でなければなりません。このようなデータ( 'AGE'、22) 、時刻データ( '年齢')23で、データ( 'AGE')は22を返します。、HTMLは、静的なデータがjQuery.cacheにバインドされる最初の通話データでJS()は、変数をコピーする場合、コピーキーの文字は、対応する小文字に変換されているためです。再び、あなたがデータを変更したり、キーが小文字に変換されていないため、新しいデータを追加し、データ型変換を格納していないとき)(データを使用して! 
典型的には、データ(「lastValue」、値 ) 、およびデータ(「最終値」、値)は、 同じデータが修正されます。 
データのない場合は、()の結合、すなわち、$ EL JSONオブジェクト上のすべてのデータを取得するために任意のパラメータを渡し、その後、オブジェクトの属性値を変更します。

DT = $ el.data()でした。
DT [ '荷重値'] = 99。
dt.lastValue = 100; 

$ el.data( '負荷値'); //?
$ el.data( '負荷値'); //?

あなたは見つけるのE LをD A T A ' L A S T - V A L U E ' に戻ってバック99 および 99を返すようにel.data( '最後の値を')、およびel.data( 'lastValue' )100を返します。これに相当する別の方法: 
$ el.data({ '最終値' 99 'lastValue':100});

概要 
ページが構成要素に関連するデータを格納して転送する場合には、データ()比attrが()よりよい選択です。)(データを理解することは正しくAPIを使用するためには、動作します。

おすすめ

転載: www.cnblogs.com/yuan9580/p/11343938.html