【问题标题】:How to Retrieving Html generated by JavaScript如何检索由 JavaScript 生成的 Html
【发布时间】:2017-05-30 20:36:50
【问题描述】:

我想检索购物车产品列表,它位于由 JavaScript 生成的 html 上。我试过 var input = console.log(document.getElementsByTagName('html')[0].innerHTML) 这返回一个值 undefined 。请帮忙

【问题讨论】:

  • 它返回值undefined,因为console.log() 不返回任何内容。打开你的 JS-Console 试试看,i.imgur.com/D6Cu9UH.jpg
  • 元素有ID还是类?尝试 getElementByID 或 getElementsByClassname
  • 你想从控制台接收一个值???
  • 要么删除var input =,要么删除console.log()。正如@LucaKiebel 指出的那样,console.log() 的返回值将始终undefined

标签: javascript html shopping-cart cart console.log


【解决方案1】:

你变得不确定是因为你的陈述有点混乱。 console.log 会将括号中的内容记录到浏览器控制台。因此,在这种情况下,您的 var 输入执行控制台日志,这在逻辑上没有多大意义。但你已经接近了......

您可以在以下几行中做一些事情:

var input = document.getElementsByTagName('html')[0].innerHTML;
console.log(input);

这将打印带有 html 标签的第一个元素的 HTML 内容。

【讨论】:

  • console.log() 只会输出到浏览器的控制台。它不会在窗口或 DOM 中的任何位置打印任何内容。你在看控制台输出吗?
  • 我想通过 JavaScript 添加 html,这是在购物车中点击创建的产品列表"
  • 您是否在产品列表已在购物车中之后执行此getElementsByTagName 代码?如果您使用 JavaScript 创建这些购物车产品,您是否可以不在 JavaScript 中引用它们的变量而不是从 HTML 中获取它们?
【解决方案2】:

Console.log 不会从其函数返回值,它只是将内容打印到终端。当函数未定义时,这意味着您没有提供返回值。

示例:

function addTwoNumbers( val1, val2 ) {
  const str = 'Adding two numbers';
  return val1 + val2;
}

将返回数字 val1 添加到数字 val2 的任何结果。如果删除 return val1 + val2 语句,str 变量将被忽略,因为它没有被返回,因此函数 addTwoNumbers();将变得未定义。

【讨论】:

  • 那么我如何检索 JavaScript 生成的 html 呢?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-01
  • 2012-06-19
  • 1970-01-01
  • 2011-03-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多