테스트 사이트 - 개발 중인 베타 버전입니다

li 안의 텍스트를 가져오려고 합니다. 채택완료

세진컴퓨터랜드 2년 전 조회 2,465

</p>

<p><li>

    <span>텍스트1</span><span>텍스트2</span>

</li>

<li>

    <span>텍스트3</span><span>텍스트4</span>

</li>

<li>

    <span>텍스트5</span><span>텍스트6</span>

</li></p>

<p>

 

제이쿼리로

li 안에 텍스트가 있을 때, 텍스트를 전부 가져와 배열에 담으려고 합니다.

 

그누보드를 커스텀 중인데

li안에 선택한 상품목록이 있는데, 결제 페이지에 넘기려고 합니다.

 

</p>

<p>텍스트1텍스트2, 텍스트3텍스트4, 텍스트5텍스트6</p>

<p>

 

배열로 받아도 되고, 구분자(예를들어|, @@)등을 넣어서 텍스트로 받아도 됩니다.

 

어떤 방법이 있을까요?

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 6개

채택된 답변
+20 포인트
wodud3073
2년 전

</p>

<p>var code = [];</p>

<p>$('li span').each(function(){</p>

<p>  code.push($(this).text());

}):</p>

<p> </p>

<p>code = code.join('|');</p>

<p>console.log(code);</p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

li안에 선택한 상품목록이 있는데, 결제 페이지에 넘기려고 합니다...

===

php에서 해결하시는 것이 쉬울 듯합니다.

따로 <form을 만들어 it_id들을 넘기는 방식은 어떨까요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

2년 전

li의 부모 ul에 id 부여

<ul id='my'>

 

arr=[];
$('#my li').each(function(){
      arr.push( $(this).text() );
});

alert(arr)

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

복스리
2년 전

</p>

<p><!DOCTYPE html>

<html lang="en">

 <head>

  <meta charset="UTF-8">

  <script src="<a href="http://sir.kr/js/jquery-1.8.3.min.js"></script>" target="_blank" rel="noopener noreferrer">http://sir.kr/js/jquery-1.8.3.min.js"></script></a>

 </head>

 <body>

  <li>

    <span>텍스트1</span><span>텍스트2</span>

  </li>

<li>

    <span>텍스트3</span><span>텍스트4</span>

</li>

<li>

    <span>텍스트5</span><span>텍스트6</span>

</li>

 </body>

 <script>

 var arr = [];

  $('li>span').each(function(){

    arr.push($(this).text());

  });

  aa = arr.join('|');

  document.write(aa);

  console.log(aa);

 </script>

</html></p>

<p>

 

위의 스크립트를 실행시키면  "텍스트1텍스트2텍스트3텍스트4텍스트5텍스트6"  이렇게 몽땅 가지고 옵니다.

해당 text의 내용을 가지과 서 aa란 변수에 넣고 있습니다.

이부분을 조금 응용해보시면 배열식으로 담을수도 있습니다. 어떻께서든 요리(?) 를 할수 가 있지요.

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

</p>

<p>var texts = []; // 텍스트를 저장할 배열을 초기화합니다.</p>

<p>$('li').each(function() { // 각 li 요소에 대해 반복합니다.

  var text = ''; // li 안의 텍스트를 저장할 변수를 초기화합니다.

  $(this).find('span').each(function() { // li 안의 각 span 요소에 대해 반복합니다.

    text += $(this).text(); // span 요소의 텍스트를 text 변수에 추가합니다.

    if ($(this).next('span').length) { // 다음 span 요소가 있으면 구분자를 추가합니다.

      text += '@';

    }

  });

  texts.push(text); // 완성된 텍스트를 배열에 추가합니다.

});</p>

<p>var result = texts.join('|'); // 배열의 요소를 구분자로 연결하여 문자열로 만듭니다.

console.log(result); // 넥스트1@텍스트2|텍스트3@텍스트4|텍스트5@텍스트6 출력

 

이런식으로 구현하시면됩니다.

코드는 챗 GPT 가 짜줬습니다~

세상 좋아졌습니다~

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

e
2년 전

str_text.replace("찾을 문자열", "변경할 문자열") 를 활용해서

<li>,<span>,</span> 태그를 삭제하고..
</li> 를 구분자로 배열에 담으면 되겠네요.

 

var str = "해당문자열"

str.replace("<li>", "");

str.replace("<span>", "");

str.replace("</span>", "");

var arrString = str.split("</li>"); 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인