2013-10-24 23 views
0

我有一个选择,当需要删除项目而不是刷新页面时,我需要重置其中的值。默认选项不断被删除。尝试清空除第一个选项以外的所有选项

HMTL:

<select id="my_SiteGroups" style="width:200px;"> 
    <option value='default' disabled="disabled">Select a group</option> 
</select> 

JS:

group = $('#my_SiteGroups'); 
function populateGroups(){ 
    //Populate the group list 
    strHTMLSiteGroups = ""; 
    group.empty(':not(:first-child)'); 
    $().SPServices({ 
     operation: "GetGroupCollectionFromSite", 
     async: true, 
     completefunc: function(xData, Status) { 
     $(xData.responseXML).find("Group").each(function() { 
     strHTMLSiteGroups += "<option value='" + $(this).attr("Name") + "'>" + $(this).attr("Name") + "</option>"; 
     }); 
     group.append(strHTMLSiteGroups); 
     } 
    }); 
} 

基本上populateGroups添加所有的选择,但是当我删除用户,我希望它再次运行。删除已删除的选项。我用这个来删除:

function removeGroupFromSite(){ 
    //check if default group selected 
    if(group.val() != null){ 
    var removeConfirm = confirm("Are you sure you want to delete: " + group.val()); 
    if(removeConfirm){ 
     $().SPServices({ 
     operation:"RemoveGroup", 
     groupName: groupValue, 
     async:true, 
     completefunc: function (xData,Status){ 
      alert(groupValue + " succesfully deleted");   
      group.val('default'); 
      populateGroups(); 
      $("#my_SPUsersAssigned").empty(); 
      $("#my_SPUsersAvailable").empty(); 
     } 
     }); 
    } 
    }else{ 
    alert("Please select a group"); 
    }} 

编辑:使用Javasript追加默认选项会更容易吗?

+0

你忘了告诉是什么问题。 – Tomalak

+1

对不起,问题是第一个选项不断被删除。 – Batman

回答

1

empty()删除所有内容,选择选项并将其删除。

$("#my_SiteGroups option:gt(0)").remove(); 

jsfiddle

+0

有什么我可以做的组变量,而不是重新抓取元素? – Batman

+0

使用find? 'group.find(“option:gt(0)”)。remove();' – epascarello

+0

不起作用,仍然删除第一个元素。 – Batman

相关问题