You need to enable JavaScript to run this app. jQuery多同类名div下select选中值写入对应textarea 无需单独设类ID
优惠活动
大模型
产品
解决方案
定价
更多

jQuery多同类名div下select选中值写入对应textarea 无需单独设类ID

问题根源

现有代码的核心缺陷是DOM选择器的全局匹配逻辑:执行$(".textArea")时,会选中页面上所有带textArea类的文本域,没有把值的修改范围限定在当前下拉框所属的容器内,因此每次触发下拉框变更,都会全局覆盖所有文本域的内容。

修复实现

不需要为每个div配置独立类名或ID,借助jQuery的DOM遍历能力即可实现精准范围限定,且这种写法对任意数量的同结构容器都能正常生效,完全满足扩展需求。
修正后的功能代码:

// 下拉框选中值同步到同容器内的文本域
$(document).ready(function(){
    $(".js-example-basic").change(function () {
        // 从当前触发变更的下拉框元素出发,定位所属父容器,再查找容器内的文本域
        $(this).closest(".selectValue").find(".textArea").val(this.value);
    }).change();
});

实现逻辑说明

  • 事件回调内的$(this)指代当前触发change事件的具体下拉框元素,不会和其他同类型下拉框产生混淆
  • .closest(".selectValue")会沿着DOM树向上追溯,精准匹配到包裹当前下拉框的、类名为selectValue的div容器,把后续操作的范围锁定在这个容器内部
  • 后续的.find(".textArea")仅会在锁定的容器范围内查找文本域,完全不会触达其他独立容器内的同类型元素

内容的提问来源于stack exchange,提问作者Michael Martensen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.14 21:15:03