[jQuery Mobile]動的にグループボタンを追加する

ラジオボタンやチェックリストなど、グループ化しているボタンをJavaScriptで動的に追加する方法を考案してみました。
group.js
function append()
{
	var idx = $('input[name="conlist"]').length;

	var s = getValue();

	var id = "list" + idx;
	$('#clist').append($('<input />', {
		'type': 'radio',
		'name': 'conlist',
		'id': id,
		'data-role': 'controlgroup',
		'value': s
	}));
	$('#connectlist').append('<label for="' + id + '">' + s + '</label>').trigger('create');

	idx++;
	var i = 0;
	$('#clist > .ui-radio').each(function(){
		$(this).children().first().attr('id', "list" + i);
		for(var j = 0; j < 2; j++){
			var o = $(this).find((j == 0) ? '.ui-btn-inner' : '.ui-btn');
			if(idx == 1){
				o.removeClass('ui-corner-top');
				o.addClass('ui-btn-corner-all');
			}else{
				o.removeClass('ui-btn-corner-all');
				if(i == 0){
					o.addClass('ui-corner-top');
				}else if(i == idx - 1){
					o.removeClass('ui-corner-top');
					o.addClass('ui-corner-bottom');
				}else{
					o.removeClass('ui-corner-top');
					o.removeClass('ui-corner-bottom');
				}
			}
		}
		i++;
	});
}
2012/07/14