javascript - js创建元素绑定的onclick事件为何传入的参数是对象??
本文介绍了javascript - js创建元素绑定的onclick事件为何传入的参数是对象??的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
<html>
<script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>
<body>
<p id="ppp" style="background-color:yellow">asasasa</p>
</body>
<script>
function downloadUploadFile(fileid) {
console.log(fileid); // <p id="123">...</p> 此处为何传进来是dom对象??
console.log(typeof fileid);// object??
}
function createNode(fileId, fileName) {
return $("<p id='id_" + fileId + "'> <a href='javascript:void(0)' onclick=downloadUploadFile(id_" + fileId + ");>下个载 " + fileName + "</p>");
}
var node = createNode('123', '槽边往事');
console.log(node); //[p#id_123]
$("#ppp").append(node);
</script>
</html>
如上代码,用js创建提供下载功能的节点,并绑定download事件,可是为何穿进去的参数是对象?而不是id_123
解决方案
f12看下你的代码应该是onclick=downloadUploadFile(id_333),你是把变量id_333传进去了,应该加个引号
这篇关于javascript - js创建元素绑定的onclick事件为何传入的参数是对象??的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文