// 単位
var taniData = jQuery.parseJSON('[{"tani":"\u68df","sort_no":"1"},{"tani":"\u6a5f","sort_no":"2"},{"tani":"\u8eca","sort_no":"3"},{"tani":"\u672c","sort_no":"4"},{"tani":"\u4ef6","sort_no":"5"},{"tani":"\u5f0f","sort_no":"6"}]');
// 単位リスト作成
function openTaniWindow(retObj) {
var parentObj = retObj.closest('[data-select-type="tani"]');
var btnObj = parentObj.find('.dropdown-toggle');
var dropdownId = btnObj.attr('id') + '_dropdown';
if (jQuery('#'+dropdownId).length < 1) {
parentObj.append('
');
var dialogHtml = '\
\
';
jQuery('#'+dropdownId).html(dialogHtml);
}
// 表示時処理
parentObj.on('show.bs.dropdown', function () {
// リスト取得・反映
renderTaniList(taniData, retObj, '#' + dropdownId + ' .table-list>table>tbody');
});
parentObj.on('shown.bs.dropdown', function () {
jQuery('#' + dropdownId + ' a:enabled').first().focus();
});
// 非表示時処理
parentObj.on('hidden.bs.dropdown', function () {
btnObj.focus();
});
}
// 単位リスト作成
function renderTaniList(data, retObj, listObjPath) {
// リストへ反映
jQuery(listObjPath).empty();
jQuery.each(data, function(index, elem) {
listHtml = '\
| '+ jQuery.trim(elem.tani) +' |
';
jQuery(listObjPath).append(listHtml);
});
// 単位選択
jQuery(listObjPath + '>tr>td, ' + listObjPath + '>tr>td>a').on('click', function(event){
event.preventDefault();
var tani = $(this).closest('tr').find('td.tani').text();
retObj.val(tani).change();
});
}