You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现两个input文本框值同步交换?现有代码仅第一个输入框正常

解决两个输入框值同步交换的问题

嘿,我来帮你搞定这个输入框值交换的问题!听起来你现在的代码里第一个输入框能正常工作,但第二个出问题,大概率是交换逻辑里没正确暂存值,或者获取第二个输入框元素的时候出了小差错。

核心思路:必须先暂存其中一个值

交换两个输入框的值时,一定要先把其中一个值存在临时变量里——如果直接互相赋值,先被覆盖的那个值会彻底丢失,自然没法完成完整交换。

完整可运行代码示例

HTML部分

<input type="text" id="input1" placeholder="输入第一个值">
<input type="text" id="input2" placeholder="输入第二个值">
<button onclick="swapValues()">交换值</button>

JavaScript部分

function swapValues() {
  // 获取两个输入框的DOM元素
  const input1 = document.getElementById('input1');
  const input2 = document.getElementById('input2');
  
  // 暂存第一个输入框的值,避免被后续赋值覆盖
  const tempValue = input1.value;
  
  // 执行交换操作
  input1.value = input2.value;
  input2.value = tempValue;
}

关键细节提醒

  • 务必保证输入框的id属性和JS里getElementById的参数完全一致,这是新手最容易踩的小坑
  • 临时变量tempValue是交换逻辑的核心,没有它就会出现“覆盖后丢失原值”的问题
  • 这个逻辑兼容空值场景,哪怕其中一个输入框没填内容,也能正常完成交换

把这段代码替换你现有的实现,点击按钮就能看到两个输入框的值同步交换啦!

内容的提问来源于stack exchange,提问作者Mohamed Hassan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:55:47