2011-01-26 4 views
1

クリックするアンカータグの直前にテキストを追加したいと思います。上記アンカータグの前にテキストを追加しました

$(document).ready(function(){ 
    $(".none_standard_links").live('click', function(event) 
    { 
     event.preventDefault(); 
     $(this).prepend("test"); 
    }); 
}); 

、以下のようにHTML私を与える:次は、実際のアンカータグ自体にテキストを追加します

リンクが

クリックされた後、リンクが

<a href="#" class="none_standard_links">link one</a> 

をクリックする前に、

<a href="#" class="none_standard_links">testlink one</a> 

私が欲しいのは:

test<a href="#" class="none_standard_links">link one</a> 

答えて

2

beforeを使用できます。

$(document).ready(function(){ 
    $(".none_standard_links").live('click', function(event) 
    { 
     $(this).before("test"); 
    }); 
}); 

Live example

+0

私は 'event.preventDefault()を落とし、なぜ私はわからないんだけど、それから'。 FWIW、理由はない、それは解決の一部ではない。 –

1

.beforeを使用してみてください:あなたは.insertBeforeを使用することができます

$(this).before('something'); 

ていますが、明示的にテキストノードを作成する必要があるため、それは少し冗長です:

$(document.createTextNode("hello")).insertBefore("a"); 

Try them here.

1

代わり

$(this).before("test"); 
2

代わりの先頭に追加する(before()を使用してみてください)がbefore()

を使用するので、それは次のようになります。

$(document).ready(function(){ 
    $(".none_standard_links").live('click', function(event) 
    { 
     event.preventDefault(); 
     $(this).before("test"); 
    }); 
}); 
1

使用$.before必要なものでなければなりません:

$(this).before("test");

関連する問題