>
내 질문은 앵커에서 문자열을 변환하는 방법입니다. 링크 대신 HTML 코드가 표시됩니다. 문제는 a.forEach(li)) 에 있다고 생각합니다. 이 문제를 해결하는 방법을 모르겠습니다. (예, 예, 잘못된 코드입니다 .D. js 만 사용하여 목록을 만들려고합니다)

<script type="text/javascript">
    var myArray = 
        ['<a href="https://ceiti.md/">CEITI</a>', 
        ['<a href="#">Inner Value 1</a>', 
        '<a href="#">Inner Value 2</a>', 
        '<a href="#">Inner Value 3</a>',
        '<a href="#">Inner Value 4</a>'], 
        '<a href="#">Value 2</a>',
        '<a href="#">Value 3</a>',
        '<a href="#">Value 4</a>',
        '<a href="#">Value 5</a>',
        '<a href="#">Value 6</a>'];
    function iter(target) {
        var ul = document.createElement('ul'),
            li;
            ul.setAttribute('class','lifin');
        target.appendChild(ul);
            return function (a) {
            if (Array.isArray(a)) {
                                if (!li) {
                                    li = document.createElement('li');
                                    ul.appendChild(li);
                                }
                                a.forEach(iter(li));
                                ul.setAttribute('id','proList');
                                li.setAttribute('id','pList');
                                return;
                            }
                            li = document.createElement('li');
                            li.setAttribute('id','Mon');
                            li.appendChild(document.createTextNode(a));
                            ul.appendChild(li);
                        };
    }
    myArray.forEach(iter(document.getElementById('myList')));
    </script>


  • 답변 # 1

    var myArray = 
      ['<a href="https://ceiti.md/">CEITI</a>', 
        [
          '<a href="#">Inner Value 1</a>', 
          '<a href="#">Inner Value 2</a>', 
          '<a href="#">Inner Value 3</a>',
          '<a href="#">Inner Value 4</a>'
        ], 
        '<a href="#">Value 2</a>',
        '<a href="#">Value 3</a>',
        '<a href="#">Value 4</a>',
        '<a href="#">Value 5</a>',
        '<a href="#">Value 6</a>'
      ];
            
      function iter(target) {
          var ul = document.createElement('ul'), li;
          ul.setAttribute('class','lifin');
          target.appendChild(ul);
          return function (a) {
          if (Array.isArray(a)) {
            if (!li) {
              li = document.createElement('li');
              ul.appendChild(li);
            }
            a.forEach(iter(li));
            ul.setAttribute('id','proList');
            li.setAttribute('id','pList');
            return;
          }
          li = document.createElement('li');
          li.setAttribute('id','Mon');
          li.innerHTML = a; // Edited Line
          ul.appendChild(li);
        };
      }
        
    myArray.forEach(iter(document.getElementById('myList')));
    
    
    <li id="myList"></li>
    
    

    @FelixKing의 답변을 명확하게 작성하십시오

관련 자료

  • 이전 javascript - 각도 지시문 내에서 클릭을 발생시키는 방법
  • 다음 javascript - 함수와 매개 변수로 쿼리 문자열 구문 분석을 이해하지 못합니다