選択した値を元の値に戻す必要がある場合...これを試してください...
http://jsfiddle.net/kasperfish/sxvW2/2/
$('select').change(function () {
var opt = $(this).find(':selected');
var sel = opt.text();
var og = opt.closest('optgroup').attr('label');
//alert(sel);
//alert(og);
$(this).blur().find(':selected').text(sel + '-' + og);
});
$('select').focus(function () {
$(this).find('option').each(function(){
console.log($(this).text());
t=$(this).text().split('-');
$(this).text(t[0]);
});
});
select2プラグインを使用して更新すると、次のことができます
http://jsfiddle.net/kasperfish/bJxFR/4/
function format(item) {
opt = $('select').find(':selected');
sel = opt.text();
og = opt.closest('optgroup').attr('label');
return item.text+'-'+og;
}
$("select").select2({
formatSelection: format,
escapeMarkup: function(m) { return m; }
});