diff --git a/public/js/pages/ticket-create.js b/public/js/pages/ticket-create.js index d9c7d42..a65721c 100644 --- a/public/js/pages/ticket-create.js +++ b/public/js/pages/ticket-create.js @@ -34,9 +34,22 @@ const TicketCreate = { API.get('/auth/identities').then(list => { this.identities = list || []; const sel = container.querySelector('#identity-select'); - if (sel && this.identities.length > 1) { - sel.innerHTML = this.identities.map((it, i) => ``).join(''); - sel.closest('.form-group').classList.remove('hidden'); + const nameGroup = container.querySelector('#reporter-name-group'); + if (sel) { + if (this.identities.length > 0) { + // 有身份: 显示身份选择, 隐藏游戏名输入框(身份即代表提交者) + sel.innerHTML = this.identities.map((it, i) => ``).join(''); + sel.closest('.form-group').classList.remove('hidden'); + if (nameGroup) { + nameGroup.classList.add('hidden'); + const inp = nameGroup.querySelector('input[name="reporter_game_name"]'); + if (inp) inp.required = false; // 隐藏字段不再参与原生必填校验 + } + } else { + // 无身份: 保留游戏名输入框兜底 + sel.closest('.form-group').classList.add('hidden'); + if (nameGroup) nameGroup.classList.remove('hidden'); + } } }).catch(() => {}); } @@ -82,11 +95,11 @@ const TicketCreate = { ${user ? `` : ''} -
+