我已经找到了答案,以我自己的问题。首先,我想提一提的是,如果我的原始问题是误导性的,我很想填写这个jquery组件http://dropdown-check-list.googlecode.com/svn/trunk/doc/dropdownchecklist.html。
的Javascript功能来填充我的jQuery下拉清单插件如下:
$(document).ready(function() {
//These will apply the jquery drop down checklist to both of selects
$(".s1").dropdownchecklist({ width: 205});
$("button, input:button", null).button();
loadUserRoles();
loadUserRegions();
});
function loadUserRoles(){
var userName = $("#userName").val();
var hostname = getHostName();
var requestURL = hostname.concat("fos", "https://stackoverflow.com/users/userRoles?userName="+userName);
$.getJSON(requestURL, null, function(data){
var userRoles = new Array();
$.each(data.list, function(i,item){
userRoles.push(item.id.toString());
});
$("#role").dropdownchecklist("destroy");
$("#role").val(userRoles);
$("#role").dropdownchecklist();
//$("#role").dropdownchecklist("refresh");
});
}
function loadUserRegions(){
var userName = $("#userName").val();
var hostname = getHostName();
var requestURL = hostname.concat("fos", "https://stackoverflow.com/users/userRegions?userName="+userName);
$.getJSON(requestURL, null, function(data){
var userRegions = new Array();
$.each(data.list, function(i,item){
userRegions.push(item.id.toString());
});
$("#region").dropdownchecklist("destroy");
$("#region").val(userRegions);
$("#region").dropdownchecklist();
});
}
function getHostName(){
var url = document.URL;
var rv = url.indexOf("fos");
var hostname = url.substring(0, rv);
return hostname;
}
我的Grails的行动,返回JSON如下:
def userRoles = {
/* This action gets the user roles and returns it as JSON*/
def user = Users.findByUserName(params["userName"])
def rolesInstanceList = Authorities.findAllByUser(user)
def outputList = new JSONObject()
def rolesList = new JSONArray()
def jsonRole = null
rolesInstanceList.each {
jsonRole = new JSONObject()
def role = it.role
jsonRole.put("id", role.id)
jsonRole.put("roleName", role.roleName)
rolesList.put(jsonRole)
}
outputList.put("list", rolesList)
render outputList as JSON
}
请参阅http://stackoverflow.com/questions/1375334/jquery-dropdown-checklist-plugin-question – Orbit 2011-03-04 01:33:27