Jquery onclick-in循环只引用循环中的最后一个元素
这是我的代码:Jquery onclick-in循环只引用循环中的最后一个元素,jquery,loops,jquery-mobile,associative-array,Jquery,Loops,Jquery Mobile,Associative Array,这是我的代码: var $coursesList = $("#vakkenList");; for (var course in lessons) { var $courseLi = $("<li/>", { "data-icon": "arrow-l", "data-iconpos": "left" }); var $courseA = $("<a/>").append(course); $cour
var $coursesList = $("#vakkenList");;
for (var course in lessons) {
var $courseLi = $("<li/>", {
"data-icon": "arrow-l",
"data-iconpos": "left"
});
var $courseA = $("<a/>").append(course);
$courseLi.append($courseA);
$courseLi.click(function (e) {
alert("click " + course);
$("#AddLessonForm_vak").val(course);
$("#gridItemDetailPanel2").panel("close");
$("#gridItemDetailPanel").panel("open"); //TODO al open
});
$coursesList.append($courseLi);
};
$coursesList.listview("refresh");
var$coursesList=$(“#vakkenst”);;
for(课程中的var课程){
变量$courseLi=$(“”){
“数据图标”:“箭头-l”,
“数据图标”:“左”
});
var$courseA=$(“”)。追加(课程);
$courseLi.append($courseA);
$courseLi.单击(功能(e){
警报(“单击”+路线);
$(“#AddLessonForm_vak”).val(课程);
$(“#gridItemDetailPanel2”)。面板(“关闭”);
$(“#gridItemDetailPanel”).panel(“打开”);//TODO al open
});
$coursesList.append($courseLi);
};
$coursesList.listview(“刷新”);
当我再次点击'li'元素时,它会提醒最后一个课程。在html中附加了正确的课程。但是onclick中的引用出现了一些问题。
我做错了什么?单击事件没有问题 你的问题在于var课程 当循环完成时,您的var课程将有最后一个课程 您需要从li中获取值
$courseLi.click(function(e){
var realCourse = $(this).find("a").html();
alert("click "+ realCourse );
$("#AddLessonForm_vak").val(realCourse);
$("#gridItemDetailPanel2").panel( "close");
$( "#gridItemDetailPanel" ).panel( "open"); //TODO al open
});
我也认为这是一个结束问题,试着创造一个小提琴,这样你可以得到更多的答案