测试:62未捕获的ReferenceError:未在HTMLButtonElement.onclick上定义(测试:62)

时间:2019-06-12 18:48:37

标签: javascript

我希望能够传递不是整数而是字符串的函数值。

我对整数没有任何问题,但是对于链来说,我有一个声明问题,但我不知道它的来源...

<div id="test"></div>
<script>
  var b = "hello";

  var test = document.getElementById('test');
  test.innerHTML += "<button onclick='myFunction("+b+")'>Click me</button> ";

  function myFunction(MyVar) {
    console.log(MyVar);
  }
</script>

2 个答案:

答案 0 :(得分:0)

修复变体:

test.innerHTML += "<button onclick=myFunction('"+b+"')>Click me</button> ";
test.innerHTML += "<button onclick='myFunction(\""+b+"\")'>Click me</button> ";
test.innerHTML += "<button onclick=\"myFunction('"+b+"')\">Click me</button> ";

答案 1 :(得分:0)

您已经在函数内部传递了一个字符串,因此您无需将var括在双引号中:

var b = "hello";

  var test = document.getElementById('test');
  test.innerHTML += "<button onclick='myFunction(b)'>Click me</button>";
  function myFunction(MyVar) {
    console.log(MyVar);
  }
<div id="test"></div>