Files
EasySoft-ZenTaoPMS/module/stakeholder/js/create.ui.js
T

117 lines
2.3 KiB
JavaScript

/**
* 干系人类型变更回调函数。
*
* @return void
*/
function onChangeStakeholderType(event)
{
if($(event.target).val() === 'outside')
{
toggleNewUserCheckbox(true);
return;
}
toggleNewUserCheckbox(false);
}
/*
* 显示新建用户选择框。
*
* @return void
*/
function toggleNewUserCheckbox(remove)
{
const elements = $('.newuser-checkbox');
if(remove)
{
elements.removeClass('hidden');
return;
}
elements.addClass('hidden');
}
/**
* 新建用户选择框变更回调函数。
*
* @return void
*/
function onChangeNewUserCheckbox(event)
{
const checked = $(event.target).prop('checked');
toggleUserInfo(checked);
$('#user').prop('disabled', checked);
}
/**
* 显示新建用户信息输入框。
*
* @return void
*/
function toggleUserInfo(remove)
{
const elements = $('.user-info');
if(remove)
{
elements.removeClass('hidden');
return;
}
elements.addClass('hidden');
}
/**
* 公司下拉列表选择公司触发回调函数。
*
* @return void
*/
function onChooseCompany(event)
{
$('#company').val($(event.target).val());
}
/**
* 新建公司选择框变更回调函数。
*
* @return void
*/
function onChangeNewCompany(event)
{
const checkbox = $(event.target);
const checkboxChecked = checkbox.prop('checked');
const companyInput = $('#company');
const companySelect = $('[name="companySelect"]');
/* Reset empty default value. */
companyInput.prop('value', '');
companySelect.prop('value', '');
/* Switch between 'select' and 'input'. */
if(checkboxChecked)
{
checkbox.prop('value', 1);
companyInput.removeClass('hidden');
companyInput.trigger('focus');
companySelect.addClass('hidden');
}
else
{
checkbox.prop('value', 0);
companyInput.removeClass('hidden');
companyInput.addClass('hidden');
companySelect.removeClass('hidden');
companySelect.trigger('focus');
}
/* Remove error tips and error style. */
companyInput.removeClass('has-error');
companySelect.removeClass('has-error');
const tip = checkbox.parents('.form-group').children('.form-tip');
if(tip)
{
tip.remove();
}
}