1

jQuery でのフィルタリングに問題があります。

<div>content: content: {"bla":"test","IMPORTANT"}</div>

  <button>Remove</button>
<script>
    $("button").click(function () {
      $("div").remove(":contains('content: content: {\"bla\":\"test\",\"')");
    });

</script>

それで、div全体が削除されているonClickで、指定された部分だけを削除したいのですが、どうすればできますか?

ありがとう!

4

4 に答える 4

2

div の内部を削除する場合は、div を選択し、 を使用してその内容を空の文字列に設定しますtext()

$("div").text("");

編集:

そこにあるテキストの一部を保持したいようです。これを行うには、正規表現を使用して、必要なテキストだけをキャプチャできます。マークの答えから構築するには:

$div = $("div");
str = $div.text()
str = str.replace(/.*?,"(.*)"\}$/, "$1");
$div.text(str)

ここにjsfiddleがあります

于 2012-09-07T20:54:45.163 に答える
2

その div の内容に対して文字列操作を行う必要があります。次に、div のテキストを結果で更新します。例:

$div = $("div:contains('content: content: {\"bla\":\"test\",\"')")
str = $div.text()
str = str.replace(/your regex goes here/, "")
$div.text(str)
于 2012-09-07T21:00:33.387 に答える
1

div の内容が常に同じ方法である場合、次のコードで解決できます。

    $("button").click(function () {
      var string = $("div").text();
        var arr = string.split(":");
        var arr1 = arr[3].split(",");
        var string1 = (arr1[1].replace("\"","")).replace("\"}","");
    $("div").text(string1);
    });

Fiddle
EDITED FIDDLE でデモを確認してください: http://jsfiddle.net/2Gcy9/1/

于 2012-09-07T21:21:03.210 に答える
0
 $("button").click(function () {

  $("div:contains('content: content: {\"bla\":\"test\",\"')").text("");

 });
于 2012-09-07T20:55:20.583 に答える