Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery onclick-in循环只引用循环中的最后一个元素_Jquery_Loops_Jquery Mobile_Associative Array - Fatal编程技术网

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
            });
    

    我也认为这是一个结束问题,试着创造一个小提琴,这样你可以得到更多的答案