使用jquery从组中获取组成员

时间:2013-12-07 06:04:10

标签: javascript jquery html twitter-bootstrap

在我的fiddle中有两个表(在用户选项卡中),一个用于显示组成员,另一个用于显示组名。在小提琴中,一些已创建的组是test3,spanwave和koio。 spanwave的成员是namenayak和ajay.Similarily koio的成员是史蒂文和name.Now假设如果我点击spanwave然后从左侧表格中选择namenayak和ajay的复选框。如果我点击koio组然后同样史蒂文和名字将被选中。这对于新创建的团队工作正常,但我不知道如何在现有团队中进行相同的工作。

新创建的群组点击两个以上的复选框,然后会出现一个群组按钮,现在点击群组按钮,然后会出现一个警告弹出窗口,要求您输入群组名称。输入一些名称,然后点击确定。然后该名称将显示在右侧组表中。现在clcik组名称然后将选择那些成员。我也希望现有组中的相同。请告诉我如何。

新创建的群组的Javascript代码

$(document).on('click', '#btn2',function () {
        var groupmems="";
        var grpname;
    var email=new Array();
        var username=new Array();
        var mobno=new Array();
        var creat_group = prompt("Name your group??");
        grpname=creat_group;

        if (creat_group) {
            console.log(obj);

            $("#groupsTable").append('<tr id="groupTr' + groupTrCount + '"></tr>');
            $tr=$("#groupTr" + groupTrCount);
            var sCheckbox = new Array();
            $('#mytable tr').find('input[type="checkbox"]:checked').each(function(i) {               
                    sCheckbox.push($(this).attr("data-id"));
                    alert("hello " +sCheckbox);
            });
             var ds = (sCheckbox.length > 0) ? sCheckbox.join(",") : "";
            $tr.append("<td data-selected='"+ds+"'> <input type='button' id='btn5' class='btn btn-lg btn-primary' value='"+creat_group+"'/>  </td>");
            var userColumn = "<ul>";
            $('#mytable tr').filter(':has(:checkbox:checked)').each(function() {
                var count=0;
                var arrid=0;
                $(this).find('td').each(function() {

                    //your ajax call goes here
                    if(count == 1){

                        userColumn+= "<li>" + $(this).html() + "</li>" ;
                                                username[arrid]=$(this).html();

                        groupmems=groupmems+$(this).html()+":";


                    }
                  if(count==2)
                    {
                                                email[arrid]=$(this).html();

                        groupmems=groupmems+$(this).html()+":";


                    }
                    if(count==3)
                    {
                                                mobno[arrid]=$(this).html();

                        groupmems=groupmems+$(this).html()+";";


                    }
                    count++;
                    });
                arrid++;
            });
            $('input:checkbox').removeAttr('checked');
alert("group name "+grpname);
             alert(groupmems);
//ajax for group insert
            $.ajax(
               {
                   type: "POST",
                   url: "GroupInsert.jsp", //Your full URL goes here
                   data: { group: groupmems,groupname:grpname},
                   success: function(data, textStatus, jqXHR){
                       alert(data);                  
                   },
                   error: function(jqXHR){
                       alert(jqXHR.responseStatus);
                   }
               });
            userColumn+="<ul>";
            $tr.append("<td >" +userColumn+ "</td>");
        groupTrCount++;
        }        
    });

1 个答案:

答案 0 :(得分:1)

根据您目前的数据,您需要id用户

示例:http://sqlfiddle.com/#!2/bc9d57/1

通过sql输出数据..你的代码应该像

<tr>
   <td data-selected="{UIDS}">{GROUPNAME}</td>
</tr>

示例:

<tr>
   <td data-selected="40,46">koio</td>
</tr>
<tr>
   <td data-selected="48,50">spanwave</td>
</tr>