programing

jQuery에서 목록 요소 내용 배열 가져오기

cafebook 2023. 10. 10. 20:57
반응형

jQuery에서 목록 요소 내용 배열 가져오기

저는 다음과 같은 구조를 가지고 있습니다.

<ul>
  <li>text1</li>
  <li>text2</li>
  <li>text3</li>
</ul>

javascript 또는 jQuery를 사용하여 텍스트를 배열로 가져오려면 어떻게 해야 합니까?

['text1', 'text2', 'text3']

이 후에 제 계획은 끈으로 조립하는 것입니다. 아마 사용할 것입니다..join(', '), 다음과 같은 형식으로 제공합니다.

'"text1", "text2", "text3"'
var optionTexts = [];
$("ul li").each(function() { optionTexts.push($(this).text()) });

...속여야 합니다.찾으시는 최종 출력물을 얻으려면join()게다가 몇 개의 연결은 잘 될 것입니다.

var quotedCSV = '"' + optionTexts.join('", "') + '"';

중복되는 중간 어레이가 없는 경우:

var arr = $('li').map(function(i,el) {
    return $(el).text();
}).get();

jsfiddle 데모 참조

그리고 깨끗한 자바스크립트로:

var texts = [], lis = document.getElementsByTagName("li");
for(var i=0, im=lis.length; im>i; i++)
  texts.push(lis[i].firstChild.nodeValue);

alert(texts);

킴스틱은 가까웠지만, 아직은 아니었습니다.

편리한 원-라이너로 작업하는 방법은 다음과 같습니다.

$.map( $('li'), function (element) { return $(element).text() });

jQuery의 지도 기능에 대한 전체 설명서는 다음과 같습니다. http://api.jquery.com/jQuery.map/

완벽한 답변을 드리자면 다음과 같은 기능이 있습니다.

$.map( $('li'), function (element) { return $(element).text() }).join(', ');
var arr = new Array();

$('li').each(function() { 
  arr.push(this.innerHTML); 
})

당신은 다음과 같이 할 수 있습니다.코드 한 줄이면 충분합니다.

  • let array = $('ul>li').toArray().map(item => $(item).html());
  • 관심 요소 가져오기

    1. 아이를 가지다

    2. 배열을 에서 배열() 메서드로 가져옵니다.

    3. 원하는 결과를 걸러냅니다.

let array = $('ul>li').toArray().map(item => $(item).html());
console.log(array);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
  <li>text1</li>
  <li>text2</li>
  <li>text3</li>
</ul>

언급URL : https://stackoverflow.com/questions/247023/get-an-array-of-list-element-contents-in-jquery

반응형