第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我如何獲得一個字符串,該字符串是元素的 text(),但在 div 之后添加了空格?

我如何獲得一個字符串,該字符串是元素的 text(),但在 div 之后添加了空格?

素胚勾勒不出你 2022-12-22 11:51:51
JSFiddle 在這里你好!我正在嘗試從元素的 .contents().text() 輸出一個字符串......但每個 div 的內(nèi)容之間有空格(不改變實際的 DOM)。HTML:<!-- I don't have control over how many divs are in .myTextArea, or what text. It's really dynamic. There are also lists, etc.--tons of different types of elements. --><div class="myTextArea">  <div>Hey there!</div><div>I like turtles.</div><div>Do you like them?</div></div>查詢:var myTextDescription = $(".myTextArea").contents().text();console.log(myTextDescription);目前,它輸出:Hey there!I like turtles.Do you like them?...這就是我希望它輸出的內(nèi)容:相同的內(nèi)容,但每個 div 的內(nèi)容后有空格:Hey there! I like turtles. Do you like them?注意:關(guān)于 SO 的其他答案讓您更改實際的 DOM(又名,他們在頁面上的元素之后添加實際的空格),然后他們只獲取 text() 字符串。我不想更改 DOM。另外,我不能改用 .html() 并嘗試去除一些東西,因為會有太多類型的元素需要擔(dān)心。JSFiddle 在這里
查看完整描述

2 回答

?
夢里花落0921

TA貢獻1772條經(jīng)驗 獲得超6個贊

您快到了。替換.text()為:


//get text content of all nodes

.map((i,d) => d.textContent).get()

//remove white space

.filter(t => !!t.trim())

//join the text from all nodes with a space

.join(' ');

查看下面的演示:

var myTextDescription = $(".myTextArea").contents().map((i,d) => d.textContent).get().filter(t => !!t.trim()).join(' ');


console.log(myTextDescription);

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="myTextArea">


  <div>Hey there!</div><div>I like turtles.</div><div>Do you like them?</div>


</div>

如果您需要排除 div 中的文本,例如使用類exclude,您可以:not()像這樣使用 psedo 選擇器:

... .contents(':not(".exclude")') ....

..如以下演示所示:

var myTextDescription = $(".myTextArea").contents(':not(".exclude")').map((i,d) => d.textContent).get().filter(t => !!t.trim()).join(' ');


console.log(myTextDescription);

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="myTextArea">


  <div>Hey there!</div><div class="exclude">Please exclude this!</div><div>I like turtles.</div><div>Do you like them?</div><div class="exclude">Please exclude this too!</div>


</div>


查看完整回答
反對 回復(fù) 2022-12-22
?
慕蓋茨4494581

TA貢獻1850條經(jīng)驗 獲得超11個贊

解決此問題的一種方法是使用 JavaScript 的 querySelectorAll 方法返回 myTextArea 元素中所有 DIV 的列表。然后,您可以遍歷列表中的每個元素,獲取其 innerText 并在每個元素后放置一個空格:


var myTexts = document.querySelectorAll('.myTextArea > div');

var show = document.querySelector('#show');

var output = "";


for (var x = 0; x < myTexts.length; x++) {

  if (output == "") { // Skip adding space before first string

    output = myTexts[x].innerText;

  } else { // Add space before each appended string

    output += " " + myTexts[x].innerText;

  }

}


show.innerText = output;

<div class="myTextArea">

  <div>Hey there!</div>

  <div>I like turtles.</div>

  <div>Do you like them?</div>


</div>


<div id="show"></div>


查看完整回答
反對 回復(fù) 2022-12-22
  • 2 回答
  • 0 關(guān)注
  • 97 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號