0

リンクの表示テキストを取得しようとしていますが、jqueryのように表示されないこのタグを使用することになりました。

次のHTMLの場合

<div id="c-100001" class="cal-list-row cal-slug-item selected"><a href="" class="cal-name">Link Text</a></div>

次のjqueryは機能しますが、非常にエレガントではないようです

string = $('#' + c_key).find('a').contents()[0].data
// string should be plain "Link Text" 
4

4 に答える 4

1

jsBinデモ

var string = $('#' + c_key).find('a').text();
于 2012-07-17T08:13:01.883 に答える
1

これを試して

var string = $('#' + c_key).find('a').html();
于 2012-07-17T08:48:38.627 に答える
0

を使用してコンテナ内のすべてのリンクを取得できます

var links = ("a", $("#containerElement"));

<a ..これにより、要素のリストが表示されます。

次に、それらを反復処理するか、最初の.text()要素を取得して、それがまだjQuery要素としてラップされていない場合、または純粋なHTMLタグを取得する場合は、単純に使用できます.innerHTML

例:

var linkText = $("a", $("#myContainer"))[0].innerHTML;

また

var linkText = $("a", $("#main")).first().text();
于 2012-07-17T08:15:58.980 に答える
0

私は自分の質問に答えているので、正しい答えを探している他の人がそれを見つけることができます。助けようとしたすべての人に称賛を送りますが、これはデフォルトのjqueryの動作を変更していた特定のjqueryプラグインによって引き起こされた問題でした

基本的に、Stan Lemon(https://bitbucket.org/stanlemon/jquery-templates/)によって提供されたjquery-templateプラグインは、.text()が最初のテキストではなくオブジェクトのリストを返すように、jqueryの動作を変更しています。アイテム。

同じことを作成者に報告しますが、このプラグインは機能していないようです...おそらくjquery UIチームがここで開発したものに移行します(http://wiki.jqueryui.com/w/page/37898666/Template)

それが他の誰かにも役立つことを期待して、これをすべて報告します:)

于 2012-07-17T09:35:22.160 に答える