传递函数的问题

dengkz1 2012-05-10 01:40:21
function CreateListUI(json,divName,func)
{
var cHTML = "";

cHTML+='<li id="ListUILI'+json.id+'">'+
'<div>'+
'<td><img src="/close.gif" onclick="'+func(json.id,json.name)+')"></td>'+
'</div>'+
'</li>';


document.getElementById(divName).innerHTML+= cHTML

}

func是一个函数,怎样将这个函数绑定到img的onclick上?
...全文
96 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hch126163 2012-05-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

<script type="text/javascript">

function test(id)
{
alert(id);
}
window.onload = function () {
var id = "a1";
var str = "<……
[/Quote]

+++

拼接字符串就可以了。
自己可以调试,看拼接后的字符串是否正确
dengkz1 2012-05-10
  • 打赏
  • 举报
回复
楼上这样肯定可以,但这个test不是固定的,有可能更换另一个
乌镇程序员 2012-05-10
  • 打赏
  • 举报
回复
上面的cHTML字符串拼接还有点问题

...json.id + "'," + ...
乌镇程序员 2012-05-10
  • 打赏
  • 举报
回复
function CreateListUI(json, divName, func) {
var cHTML = "";
cHTML += '<li id="ListUILI' + json.id + '">' + '<div>' + '<td><img src="/close.gif" onclick="' + func + "('" + json.id + ',' + "'" + json.name + "')" + ')"></td>' + '</div>' + '</li>';
document.getElementById(divName).innerHTML += cHTML
}


调用CreateListUI函数时,参数func必须是一个字符串,比如:
var func = 'funcName';
CreateListUI(json, divName, func);
lhprince1 2012-05-10
  • 打赏
  • 举报
回复
<script type="text/javascript">

function test(id)
{
alert(id);
}
window.onload = function () {
var id = "a1";
var str = "<input type='button' onclick='test(\"" + id + "\");' value='click' />";
document.getElementById("mDiv").innerHTML = str;
}
</script>

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧