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

实现下拉列表值随另一下拉列表变更同步(不可修改HTML)

问题分析与修正方案

我帮你排查出几个导致代码失效的问题,修正后就能实现需求了:

问题点梳理

  • 函数未执行:你把事件绑定代码放在了myFunction()里,但这个函数从未被调用,所以监听逻辑根本没生效。
  • ID拼写错误:HTML中Leadership Action下拉框的ID是leadershipAct,但你JS里写成了leadershipAtc(末尾t和c顺序颠倒),导致无法找到目标元素绑定事件。
  • 设置选中值的方式错误:document.getElementById('status').text这种写法完全不符合select元素的操作规范,需要用正确的方法设置选中状态。

修正后的完整代码

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
// 等待DOM加载完成后执行代码,确保能找到目标元素
$(document).ready(function() {
    // 绑定change事件到正确ID的下拉框
    $("#leadershipAct").change(function () {
        // 获取当前选中的value,直接设置给status下拉框
        $("#status").val($(this).val());
    });
});
</script>
<body>
Status : 
<select id="status">
    <option value="A">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    <option value="D">D</option>
</select>
<p></p>
Leadership Action : 
<select id="leadershipAct">
    <option value="A">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    <option value="D">D</option>
</select>
</body>
</html>

代码说明

  1. 使用$(document).ready()确保代码在DOM完全加载后执行,避免找不到元素的问题。
  2. 修正了下拉框的ID拼写,确保事件绑定到正确的元素上。
  3. 利用$(this).val()获取Leadership Action下拉框当前选中的value,再通过$("#status").val()直接设置status下拉框的选中值——因为两个下拉框的option value完全一致,这种方式最简单高效。

内容的提问来源于stack exchange,提问作者Ron Miller

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:38:07