2011-07-31 11 views
0

http://jsbin.com/uzogag/2/editアラート属性のコンテンツ

私が試みと属性セレクタから「英語」を警告するjQueryのコードを探してきました。それは初心者の質問ですが、良い運動です。何らかの魂が知恵を貸すだろうか?

はJavaScript

$('p[language]').alert(this.text()); 

HTML

<!DOCTYPE html> 
<html> 
<head> 
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> 
<meta charset=utf-8 /> 
<title>JS Bin</title> 
<!--[if IE]> 
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 

</head> 
<body> 
    <h1>Select elements with specific text:</h1> 
    <div> 
    <p>This is paragraph 1.</p> 
    <p language="English">This is paragraph 2.</p> 
    <p>This is paragraph 3.</p> 
    <p>This is paragraph 4.</p> 
    </div> 
    <form> 
    <input type="button" value="Select" onclick="setStyle()"></input> 
    </form> 
</body> 
</html> 

答えて

3

jQueryオブジェクトのalertメソッドを持っていません。代わりに、次の操作を行います。

alert($('p[language]').attr('language')); 

セレクタp[language]language属性を持つ<p>要素を見つけます。

attrメソッドは、属性の値を返します。この場合、「英語」です。セレクタが複数の要素と一致した場合、このメソッドは最初の一致の値を取得します。

alertメソッドはグローバル関数です(つまり、windowオブジェクトのメンバーです)。

1

これを試してみてください:

$('p[language]').click(function() { 
    alert($(this).attr('language')); 
}); 
1

ネイティブJavaScriptメソッドalertはjQueryオブジェクトと連鎖できません。

alert($('p[language]').attr('language'))