javascript - 如何将对象传递给innerHTML (JavaScript) 中的函数?

标签 javascript function object innerhtml

如何将对象传递给innerHTML 中的函数?

这是一个例子:

function clickme()
{
  var coord = {x:5, y:10};
  testimageih(coord);
}

function testimageih(coord)
{
  var html = "<img id=\"sam1\" border=\"0\" name=\"sam1\" src=\"sample.gif\" " +
             "onLoad=\"ImageOnLoad(" + coord + ");\"></img>";
  document.getElementById("content").innerHTML = html;

}

function ImageOnLoad(coord)
{
  if (coord) alert("Success"); 
  else alert("Fail");
}

我怎样才能传递这个对象,坐标?目前,我唯一的其他办法是传递 coord.x 和 coord.y,而不是对象。

谢谢。

最佳答案

最简单的方法是创建图像、附加事件处理程序并使用 DOM 方法插入元素。

function testimageih(coord)
{
  var img = document.createElement('img');
  img.id = 'sam1';
  img.border = 0;
  img.name = 'sam1';
  img.src = 'sample.gif';
  img.onload = function() {
    ImageOnLoad(coord);
  };

  document.getElementById('content').appendChild(img);    
}

请注意,这与上面的代码有一个区别:它不会删除 #content 中当前的任何元素。如果发生这种情况,您将必须单独进行删除。

关于javascript - 如何将对象传递给innerHTML (JavaScript) 中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7743202/

相关文章:

c# - 如何注册 Javascript 函数以在每次回发时运行?

javascript - 如何让react-datepicker正确显示?

Python - 没有返回逻辑的递归函数

python - 让 PyC​​harm 将 Python 函数中的代码提取到嵌套函数中

java - 在Java中打印对象内部的数组

Javascript ajax 调用不会触发 Django

javascript - 如何一次只展开一个 Accordion 选项卡?

c - 可以使传递的指针为空的函数

javascript - 检查 Json 对象是否为空

java - 如何打印我的 Java 对象而不得到 "SomeType@2f92e0f4"?