我正在组合一个相当简单的“投票”功能 - 用户点击一个链接,“操作”页面将投票添加到数据库并返回投票数。这是我目前拥有的;
<a onClick="vote(#tipID#);return-false;" class="post-add-icon inline-items" id="tipVote"><i class="far fa-heart"></i> #tipVotes#</a>
和 JS;
<script>
function vote(num){$("#tipVote").load('/assets/a/vote/?vtype=tip&tipID='+num+'');}
</script>
一切正常,只有一个异常(exception) - 我在页面上有几个名为“tipVote”的 div(输出是动态的)。虽然我可以通过添加一个 id(即 tipVote999、tipVote232 等)来更改 div 名称,但我无法知道在输出之前这些 ID 是什么,当然,将代码复制为每个 ID。
所以,我的问题是这两种情况是否可行;
我能否以某种方式将帖子限制在调用它的 div 中?我确实尝试过(没有成功);
function vote(num) { $('this').load('/assets/a/vote/?vtype=tip&tipID=' + num + ''); }
或者,我能否以某种方式发送带有 onclick 事件的变量,该事件还显示用于回发的 div。本着这种精神,我也尝试过(再次没有成功);
function vote(num){ $("#tipVote' + num+'").load('/assets/a/vote/?vtype=tip&tipID='+num+''); }
我已经进行了大量搜索,但一无所获 - 但我觉得这一定是以前介绍过的内容。
提前非常感谢您的帮助和建议!
最佳答案
看起来你快到了;唯一的问题是一些错误嵌套的引号:
function vote(num){
$("#tipVote" + num).load('/assets/a/vote/?vtype=tip&tipID='+num);
}
假设 div id 类似于“tipVote123”,调用 vote(123)
或 vote('123')
会将数据加载到该 div 中。
或者,您可以从 DOM 中读取 ID,而不是将其作为参数传递给投票函数,使用任何 DOM 遍历从用户单击的链接到您想要填充的特定 div——但是因为它看起来就像您已经将 tipID 传递给函数一样,不妨使用它而不是读取 DOM。
关于javascript - jQuery .load 结果到 'calling' div(而不是指定的 id)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48570322/