将变量传递给javascript时未定义的值

Undefined value when passing variable to javascript

本文关键字:未定义 javascript 变量      更新时间:2023-09-26

这是我的代码:

<%for(int i=0;i<post.size();i++){  %>
    <form  name="like">
    <input type="hidden" value="<%=post.get(i).getPostid() %>" name="sunny">
    <span id="display">
        <img src="Images/like_before.png" id="p1" onclick="change_like(<%=post.get(i).getPostid() %>)" width="10" height="10">like<span id="likecount" >
    </span>
<%}%>
<script>
    function change_like(postId) {
        console.log(postId)
    }
</script>

需求-在这里我试图实现类似于facebook的功能。

因此,对于每一篇帖子,我都会有post_id>>,然后当我点击点赞按钮时,它会将此id传递给change_like函数>>,这样我就可以更新点赞计数&更改类似按钮的图像。

post_id为int类型。

问题-但这里是打印undefined

知道如何解决这个问题吗?

如果<%=post.get(i).getPostid() %>返回布尔值或数字以外的任何值,则需要像'<%=post.get(i).getPostid() %>' 一样在其周围加引号