【问题标题】:Using .join() to create an OL from a form使用 .join() 从表单创建 OL
【发布时间】:2020-04-01 00:46:16
【问题描述】:

我正在尝试使用 .join() 输出包含 OL 的消息。我在下面的代码返回了正确的消息,但我想知道我是否需要在某处关闭 OL 标记。开发者工具将输出显示为一个封闭的 OL。

注意 - 必须使用join函数,请不要使用loops等。

if (task.value){

    tasks.push(task.value);

    message = '<h2>To-Do</h2><ol><li>';
    message += tasks.join('</li><li>');
    output.innerHTML = message;
    task.value = '';

}

【问题讨论】:

  • 你可以省略结束&lt;/li&gt;标签但不能省略&lt;/ol&gt;,所以message += tasks.join('&lt;li&gt;') + &lt;/ol&gt;;:-)
  • 添加 1 个任务后不会关闭列表吗?
  • 没有。你会得到类似foo&lt;li&gt;bar&lt;/ol&gt; 的东西,它会产生一个完整的“

    To-Do

    1. foo
    2. bar
    ”字符串。 LI 的结束标签是可选的。

标签: javascript html arrays list join


【解决方案1】:

是的,您需要在某处关闭ol 标记。尽管大多数浏览器都试图猜测并修复丢失的标签,但有时却做不到。

您可以在连接线之后连接结束标记:

    message = '<h2>To-Do</h2><ol><li>';
    message += tasks.join('</li><li>');
    message += '</li></ol>';
    output.innerHTML = message;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多