jquery - jQuery 生成的元素不会调用函数
问题描述
我已经从 ajax 生成 anchore 这里是代码
html+=' <a class="btn-floating activator btn-move-up z-depth-4 modal-trigger right" href=".update-topic-modals" >'
html+='<i class="material-icons blue-text text-darken-4 white" id="editmodal" onclick="editFunction('+value._id+');" >edit</i></a>'
当我点击这个锚函数时:editFunction(value) is not call here is a editFunction() code
<script>function editFunction(_id) { alert(_id); }</script>
这是它的样子
当我按下这个 btn 函数时没有调用
解决方案
您需要进行一些更改
- 移动 onclick
- 将数据存储在数据属性中
- 委托点击
- preventDefault 点击不加载href
function editFunction(_id) {
console.log(_id);
}
var value = {
_id: "hello"
}
html = '<a data-id="' + value._id + '" class="btn-floating activator btn-move-up z-depth-4 modal-trigger right" href=".update-topic-modals" >'
html += '<i class="material-icons blue-text text-darken-4 white" id="editmodal">edit</i></a>'
$("#container").on("click",".modal-trigger",function(e) {
e.preventDefault();
editFunction($(this).attr("data-id"));
});
$("#container").append(html)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="container"></div>
推荐阅读
- vector - 使用 html2canvas 获取谷歌地图矢量截图
- javascript - 有人可以向我解释有什么问题吗?- 按高度排序
- android - Android webview没有在按钮点击时生成pdf报告
- iframe - 多个 iFrame 结束侦听器事件仅适用于 Embedded Vimeo Link 上的第一个视频
- ruby-on-rails - Raect js:尽管在控制台中有错误的凭据和未经授权的状态,但仍然登录
- javascript - 在 AM Charts JS 中获取给定 X 值的 Y 值
- c++ - 由于链接错误,无法使用 Pistache.io 构建 C++ 程序
- pandas - 找出 DataFrame 列中有多少常见的缺失 (nan) 值
- r - quanteda - 计算前 n 个特征的稀疏比例
- flutter - 模拟 DateTime 参数输入