|
|
|
@ -531,34 +531,53 @@ export default { |
|
|
|
this.$nextTick(() => { |
|
|
|
let inputs = document.querySelectorAll(["textarea", "input"]); //用数组可以读取多个标签的元素 //.inline-input |
|
|
|
|
|
|
|
// console.log('inputs', typeof inputs, inputs) |
|
|
|
|
|
|
|
// 为每个输入框添加键盘事件监听器 |
|
|
|
inputs.forEach((input, i) => { |
|
|
|
// console.log('input',input); |
|
|
|
input.addEventListener('keydown', (event) => { |
|
|
|
|
|
|
|
// 如果按下的是回车键 |
|
|
|
// console.log('data-lineModeFlag',input.getAttribute('data-lineModeFlag')); |
|
|
|
// console.log('data-lineModeFlag', input, input.getAttribute('data-lineModeFlag'), i); |
|
|
|
// console.log('event.keyCode', event.keyCode) |
|
|
|
|
|
|
|
switch (event.keyCode) { |
|
|
|
case 13: |
|
|
|
if (event.keyCode === 13 && input.getAttribute('data-lineModeFlag') == '0') { |
|
|
|
// 阻止回车键的默认行为(换行) |
|
|
|
event.preventDefault(); |
|
|
|
// 获取当前输入框的下一个兄弟元素 |
|
|
|
// let nextInput = input.nextElementSibling(); |
|
|
|
// console.log('nextInput',nextInput,this); |
|
|
|
// // 如果存在下一个兄弟元素,将焦点移到下一个输入框 |
|
|
|
// if (nextInput) { |
|
|
|
// nextInput.focus(); |
|
|
|
// } |
|
|
|
// console.log('inputs[i+1]',inputs[i+1]); |
|
|
|
// console.log('disabled',inputs[i+1].getAttribute('disabled')); |
|
|
|
// console.log('class',inputs[i+1].getAttribute('class')); |
|
|
|
} else { |
|
|
|
break; |
|
|
|
} |
|
|
|
case 9: // tab 键 |
|
|
|
event.preventDefault(); |
|
|
|
case 40: // ↓ 键 |
|
|
|
for (let j = i + 1; j < inputs.length; j++) { |
|
|
|
// console.log(inputs[j], inputs[j].getAttribute('type'), inputs[j].getAttribute('placeholder')) |
|
|
|
if (inputs[j].getAttribute('placeholder') == "请输入结果值") { |
|
|
|
if (inputs[j].getAttribute('disabled') != "disabled") { |
|
|
|
// console.log('inputs[j]', inputs[j]) |
|
|
|
inputs[j].focus(); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
break; |
|
|
|
case 38: // ↑ 键 |
|
|
|
for (let j = i - 1; j > -1; j--) { |
|
|
|
// console.log(inputs[j], inputs[j].getAttribute('type'), inputs[j].getAttribute('placeholder')) |
|
|
|
if (inputs[j].getAttribute('placeholder') == "请输入结果值") { |
|
|
|
if (inputs[j].getAttribute('disabled') != "disabled") { |
|
|
|
// console.log('inputs[j]', inputs[j]) |
|
|
|
inputs[j].focus(); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
// 点击时全选结果 |
|
|
|
|