ウェブサイトのある要素から、テキスト "By:"を削除したいのですが、どうすればいいですか?残りのテキストはそこに残しておきたいのです。jQueryでそれを達成するにはどうすればよいですか?ありがとうございます。
HTMLの
<div id="text">By: Anonymous From Minnesota</div>
だけにしてほしい。
<div id="text">Anonymous From Minnesota</div>
もし、"By:"を含むすべての要素を探し出して削除したい場合は、次のようにします。
$(':contains("By:")').each(function(){
$(this).html($(this).html().split("By:").join(""));
});
これは、任意の要素に出現する "By:" をすべて削除するものです。もし、特定のタイプの要素をターゲットにしたい場合は、$(':contains("By:")')
を変更すれば、都合の良いセレクタが含まれるようになります。
は、正規表現を使用したよりグローバルなソリューションです。これは、文字列の構造が変わっても、By:
を置き換えることができます。
var str = $('div').text().replace(/By:/g, '');
$('div').text(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="text">By: Anonymous From Minnesota</div>
var str = $("#text").text();
$("#text").text(str.substring(3));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="text">By: Anonymous From Minnesota</div>
javascript's の substring
を使用し、div に ID を与えて簡単にアクセスできるようにします。
htmlを使用します。
<div id="text">By: Anonymous From Minnesota</div>
jqueryを使用します。
var str = $("#text").text();
$("#text").text(str.substring(3));
あなたも1行でできるはずです。
$("#text").text($("#text").text().substring(3));