javascript - 动态列出并点击事件
问题描述
我需要制作列表(如angularjs中的ng-repeat)并单击列表中的任何项目,使用所选项目的传递数据调用函数
我用$.ajax
电话列出清单$.each
$(document).ready(function() {
var inHTML = "";
$.ajax({
url: 'http://some.some',
dataType: "json",
success: function(data){
$("#dynamicTable").append('<tr><th><h5 style="margin-left: 15px; margin-top: 15px;">' + "Events" + '</h5></th></tr>');
$.each(data.videos, function(key, value){
$("#dynamicTable").append('<table><tr><td class="aktivniItem backgroundIdKlupa_izbornik_td" style="color: white">'+ moment(value.time).format('DD-MM-YYYY HH:mm:ss') +'</td><tr></table>').click({param1: value.href}, setSourceToVideoPlayer);
});
function setSourceToVideoPlayer(event){
alert(event.data.param1);
}
}
});
});
并在 HTML
<table id="dynamicTable" class="table-hover"></table>
问题是,使用此代码,当我单击列表中的任何项目时,我会收到所有项目的传递数据的警报,一个接一个,而不仅仅是单击。
解决方案
请尝试以下代码。我给出了唯一的想法,可能是一些语法错误。
$(document).ready(function() {
var inHTML = "";
$.ajax({
url: 'http://some.some',
dataType: "json",
success: function(data){
$("#dynamicTable").append('<tr><th><h5 style="margin-left: 15px; margin-top: 15px;">' + "Events" + '</h5></th></tr>');
$.each(data.videos, function(key, value){
$("#dynamicTable").append('<table><tr><td class="aktivniItem backgroundIdKlupa_izbornik_td" data="' + value.href + '" style="color: white">'+ moment(value.time).format('DD-MM-YYYY HH:mm:ss') +'</td><tr></table>');
});
$(".aktivniItem").click(function (){
alert($(this).attr("data"));
});
}
});
});
推荐阅读
- ruby - 参数数量错误(0 代表 1)Ruby
- python-3.x - xlwings:无法通过 xlwings 功能区导入函数 (UDF)
- python-asyncio - 为异步 aiohttp 和 aio 文件编写单元测试
- android - 如何增加语音识别(Speech to Text)android(SpeechRecognizer)的收听时间
- java - Springboot Couchbase 应用程序无法部署在 windows 中
- windows - Redis sentinel 作为 windows 服务
- node.js - 提交表单时出现 400 错误请求
- c# - 具有字符串列表的 JSON DeserializeObject
- node.js - 将规范报告器输出打印到 WebdriverIO 中的文件?
- laravel - 单一登录的多域,