如何在jquery.each()函数

时间:2016-04-07 15:09:30

标签: javascript jquery

我有一个调用javascript函数填充它的php页面。 该页面是一个用户列表,每个用户都有自己的表单,表单ID的ID附加在其名称后面,允许对每个用户进行编辑,删除等。 表单是html页面的形状,理论上每个记录都会被吸入。 我使用jquery each()迭代记录,然后理论上应该吸入html页面并为每个记录填充。我也尝试过循环。 下面的代码生成正确数量的表单但是为空。 其他的努力让我只留下填充拳头的最后一条记录而其他记录空了。 非常感谢任何帮助。

$(Udata).each(function(uId, value){
    uid = value.uid;
    var uname = value.uname;
    function setValues() {
       window.document.getElementById("username").value=uname;
       window.document.getElementById("frmDelUsr").setAttribute("name","frmDelUsr"+uid);
    }

    $.get("users.html",{}, function (data) {                            
    $("#divfrmDelUser").append(data), function(){setValues();}

});

1 个答案:

答案 0 :(得分:0)

$(Udata).each(function(uId, value){
    uid = value.uid;
    var uname = value.uname;
    function setValues() {
       window.document.getElementById("username").value=uname;
       window.document.getElementById("frmDelUsr").setAttribute("name","frmDelUsr"+uid);
    }

    $.get("users.html",{}, function (data) {                            
    $(this).children('.divfrmDelUser').append(data), function(){setValues();} //<--- CHANGED

});

首先,您必须通过将ID设置为类(仅删除“id”并明确键入“class”)来更改ID为“divfrmDelUser”的元素,那么应该选择当前的Udata正在使用,然后在其中查找包含“divfrmDelUser”类的元素,并按照您的设置执行操作。