如何在innerhtml中使用onclick

时间:2018-03-13 20:15:22

标签: javascript jquery html

我已经在div中创建了一个新div并在div中显示了有关主题的信息,还有一个链接来阅读有关该主题的更多内容,但是我的onlick功能无法正常工作,它一直在告诉id没有定义。我怎样才能通过innerHTML传递价值

   function displayNews(section, id, title) {
        var section = section;
        var id      = id;
        var title   = title;  

    contentDiv.innerHTML = '<div onclick="displayInfo(id, title);">More info</div>';
}

2 个答案:

答案 0 :(得分:3)

你可以制作一个真实的元素而不是html来选择性地执行此操作。

function displayNews(section, id, title) {
  var section = section;
  var id = id;
  var title = title;
  var element = document.createElement('div');
  
  element.onclick = function () {
    displayInfo(id, title);
  };
  
  element.innerHTML = "More info";
  //i don't see contentDiv defined, but this shows the operation
  contentDiv.appendChild(element);
}

答案 1 :(得分:-1)

您未正确连接值。

这就是你的意思,我想:

function displayNews(section, id, title) {
  var section = section;
  var id = id;
  var title = title;

  var div = '<div onclick="displayInfo(' + id + ', "' + title + '");">More info</div>';
  
  alert(div);
}

displayNews(1, 2, 3);