【问题标题】:Creating a list of links from an array从数组创建链接列表
【发布时间】:2019-09-17 19:52:24
【问题描述】:

我正在尝试传递一个数组并从数组中的值返回一个链接列表。

这就是我到底想要的来自

var list = ["Link 1", "Link 2", "Link 3"]

我尝试了几种不同的方法,但遇到了不同的错误。我希望有人能指出我正确的方向或指出我的问题所在。


  var list = document.createElement('ul').attr("id", "ticketList"); // Create the list element

  $.each(arr, function(i, arr) {
    $("#ticketList").append("<li><a href="'https://jeng.internal.com/browse/'+arr[i]+'"  id="'+arr[i]+'_link">'+arr[i]+'</a></li>");

    return list;
  }

我得到了错误

未捕获的 ReferenceError:未定义 onSearchClickHandler

我也试过了:

function makeUL(arr) {  

  var list = document.createElement('ul'); // Create the list element

  for (var i = 0; i < arr.length; i++) { //loop through the array to make the list
        var z = document.createElement('li');
        var item = '<a href="https://jeng.internal.com/browse/'+arr[i]+'"  id="'+arr[i]+'_link">'+arr[i]+'</a>';
        z.appendChild(item)
        list.appendChild(z); // Add it to the list
    }
    return list;
  }

从这里我得到错误

未捕获的类型错误:无法在“节点”上执行“appendChild”:参数 1 不是“节点”类型。

我环顾四周,根据this 问题和答案尝试添加.innerHTML,但它让我回到原来Uncaught ReferenceError 的相同错误

任何帮助将不胜感激。

【问题讨论】:

  • onSearchClickHandler 你在哪里引用这个?它不会出现在您在此处发布的代码的任何部分

标签: javascript jquery google-apps-script


【解决方案1】:

要达到预期结果,请对您的代码进行以下更改

  1. 创建ul 元素并附加到正文

    var list = document.createElement('ul'); // 创建列表元素 $("body").append(list)

  2. 然后添加属性id -ticketList

    $('ul').attr("id", "ticketList");

  3. 使用 $.each 循环 arr

工作代码供参考

var arr = ["Link 1", "Link 2", "Link 3"]

var list = document.createElement('ul'); // Create the list element
$("body").append(list)
$('ul').attr("id", "ticketList");
  $.each(arr, function(i, arr) {
    $("#ticketList").append("<li><a href='https://jeng.internal.com/browse/"+arr+"'  id="+arr+"_link>"+arr+"</a></li>");
  })
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;

codepen - https://codepen.io/nagasai/pen/LYPJoaN?editors=1010

【讨论】:

  • 我认为return list; 不是必需的,因为它甚至不在函数的范围内。
  • @VVV,是的,我只是重复使用相同的代码,现在更新代码,谢谢
猜你喜欢
  • 1970-01-01
  • 2014-06-15
  • 1970-01-01
  • 1970-01-01
  • 2014-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多