[英]How can I pass object parameters to the onclick function in backtick
I'm trying run the onclick function in backticks, when i clicked. 当我单击时,我试图在反引号中运行onclick函数。
backticks : 反引号:
socket.onmessage = function(event){
console.log(event.data);
const data = JSON.parse(event.data);
data.map((person)=>{
console.log(person)
$("#unknown-persons").append(`
<div class="media p-l-5">
<div class="pull-left">
<img width="40" src="${person.image}" alt="">
</div>
<div class="media-body">
<small class="text-muted">${new Date(parseInt(person.time))}</small><br/>
<a data-toggle="modal" href="#modal-unknown-person" onclick="labelingToUser(person)">${person.name} ${person.lastname}</a>
</div>
</div>
`)
})
}
onclick function: onclick函数:
function labelingToUser(){}
But i can not pass the person object as parameter to my onclik function. 但是我无法将person对象作为参数传递给我的onclik函数。 How can i do ?
我能怎么做 ?
Person is not global object, so its not accessible to append function. 人不是全局对象,因此附加功能不可访问。
Try this 尝试这个
var personglobal;
socket.onmessage = function(event){
console.log(event.data);
const data = JSON.parse(event.data);
data.map((person)=>{
personglobal = person;
console.log(person)
$("#unknown-persons").append(`
<div class="media p-l-5">
<div class="pull-left">
<img width="40" src="${person.image}" alt="">
</div>
<div class="media-body">
<small class="text-muted">${new Date(parseInt(person.time))}</small><br/>
<a data-toggle="modal" href="#modal-unknown-person" onclick="labelingToUser(personglobal)">${person.name} ${person.lastname}</a>
</div>
</div>
`)
})
}
you can use JSON.stringify(person
) method to convert the object ot json string then pass it to the function calling as following: 您可以使用
JSON.stringify(person
)方法转换ot json字符串对象,然后将其传递给如下调用的函数:
socket.onmessage = function(event){
console.log(event.data);
const data = JSON.parse(event.data);
data.map((person)=>{
console.log(person)
$("#unknown-persons").append(`
<div class="media p-l-5">
<div class="pull-left">
<img width="40" src="${person.image}" alt="">
</div>
<div class="media-body">
<small class="text-muted">${new Date(parseInt(person.time))}</small><br/>
<a data-toggle="modal" href="#modal-unknown-person" onclick="labelingToUser(${JSON.stringify(person)})">${person.name} ${person.lastname}</a>
</div>
</div>
`)
})
}
function labelingToUser(person){}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.