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

如何实现点击按钮仅将文本追加到所属div容器而非其他容器?

解决方法

修改后的jQuery代码

$(document).ready(function(){
   $(".add").on("click", function(){
      // 获取当前点击按钮所属的container容器
      const $container = $(this).parent(".container");
      // 定位当前容器内的输入框
      const $input = $container.find(".someText");
      const inputVal = $input.val().trim();
      
      // 非空时才追加内容,避免空文本
      if(inputVal){
          $container.append(`<p>${inputVal}</p>`);
          $input.val("");
      }
   });
});

关键修改说明

  • 上下文定位:不再全局选中所有.someText输入框,而是在点击事件中通过$(this)(当前点击的+按钮)向上找到父容器container,再在容器内查找对应的输入框,确保操作的是当前按钮所属的容器和输入框,不会干扰其他容器。
  • 修正容器选择:原代码中$(".container", this)是在+按钮内部查找container,这是错误的——container是+按钮的父元素,所以改用$(this).parent(".container")准确获取父容器。
  • 可选优化:增加了输入值的非空判断,避免点击+时追加空内容;用<p>标签包裹追加的文本,让每条内容独立成行,提升可读性。

原HTML结构无需修改

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
   <div class="add">+</div>
   <input class="someText" type="text">
</div>
     
<div class="container">
   <div class="add">+</div>
   <input class="someText" type="text">
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 07:32:38