【发布时间】:2015-08-06 19:39:16
【问题描述】:
我正在尝试使用 json 添加开关案例。如何填充数据?
这是预期的输出:
$(".custom-menu li").click(function(){
switch($(this).attr("data-action")) {
// A case for each action.
case "Science": $('.abc:eq(0)').trigger('click',['Zoology']); break;
case "Science": $('.abc:eq(1)').trigger('click',['Botany']); break;
case "Maths": $('.abc:eq(2)').trigger('click',['Geometry']); break;
}
});
这是结构:
$(".custom-menu li").click(function(){
switch($(this).attr("data-action")) {
//looking to populate data here
}
});
jQ
var val;
$.ajax({url: 'subjects.json'}).done(function(d) {
val = d;
$.each(val, function(i, su) {
$('case "'+su[0]+'": $('.content:eq(0)').trigger('click',['+su[1]+']); break;')
.appendTo('data-action'); //How to refer $(this).attr("data-action")
});
});
json:
[ [ "Science", "Zoology"],
[ "Science", "Botany"],
[ "Maths", "Geometry"] ]
【问题讨论】:
-
你想在
$(".custom-menu li").click....中做什么动作和主题以及$('.abc')点击处理程序做什么 -
@Satpal 谢谢我想通过
$(".custom-menu li")点击触发$('.abc')点击。为了触发点击,我将 json 值传递给$('.abc')点击。 -
@amdixon 谢谢。对我来说没有太大意义。您的意思是通过json将每个案例传递给switch语句?作为“科学”案例: $('.abc:eq(0)').trigger('click',['Zoology']);休息;
-
有一个函数可以查看该 json 输入并生成 switch 语句(作为字符串)作为输出。然后这个字符串可以是
evald in $(".custom-menu li").click -
您能告诉我们您的 HTML 代码吗?
标签: javascript jquery json