首页 > 解决方案 > javascript onclicking按钮给不同的div

问题描述

我希望改进我的 javascript,我注意到我经常做的一件事是 eval(string) 并将其转换为变量,我在这里有一个示例,使用 2 个 cta 的 onclick 来访问不同的对象。我一直在寻找一种替代方式而不是“eval”字符串,

//js
function test2(e){
  var x=e.value;
  var y=eval(x);
  var results = document.getElementById('results');
   results.innerHTML='name '+y.name+' age '+y.age


  }


 var tests={
   name:'lee',
    age:34
  }

  var test123={
    name:'leess',
    age:36

   }
<button value="tests" onClick="test2(this)">Button</button>
<button value="test123" onClick="test2(this)">cta2</button>

<div id="results"></div>

标签: javascript

解决方案


您可以直接在 onClick 处理程序中提供 javascript 对象:

//js
function test2(y){

  var results = document.getElementById('results');
   results.innerHTML='name '+y.name+' age '+y.age

  }


 var tests={
   name:'lee',
    age:34
  }

  var test123={
    name:'leess',
    age:36

   }
<button value="tests" onClick="test2(tests)">Button</button>
<button value="test123" onClick="test2(test123)">cta2</button>

<div id="results"></div>


推荐阅读