【问题标题】:How to clone the same input value to other inputs using JQuery?如何使用 JQuery 将相同的输入值克隆到其他输入?
【发布时间】:2020-03-31 14:21:03
【问题描述】:

我需要将输入中的值(keyup)复制到其他人,但仅限于特定块中。 我使用类选择器从项目中获取 ID,然后使用 for 循环复制该值。 为什么console.log($('.claimed').attr('id'))一直在写D1值和ID?

<script>
    $(document).ready(function () {
       $(".claimed").keyup(function (e) {
          var claimed = $(this).val();
          var claimedid = $(".claimed").attr('id');
            console.log($('.claimed').attr('id'));
          for (var i = 0; i < 25; i++) {
             $("#" + claimedid + "S" + i).val(claimed);
          }
       });
    });
</script>


<?for($day=1;$day<=3;$day++){?>
    <div class="">
        <div>
            <?echo "D".$day;?>
            <input class="claimed" type="text" name="Claimed<?=$day?>" id="D<?=$day?>">
        </div>
        <?for($student=0;$student<3;$student++){?>
            <div class="">S<?=$student?>D<?=$day?>
                <input class=""  type="text" id="D<?=$day?>S<?=$student?>">
            </div>
        <?}?>
    </div>
<?}?>

提前感谢任何可以帮助我并可能简化 jQuery 的人。

【问题讨论】:

  • 使用var claimedid = $(this).attr('id'); 来获取调用keyup 事件的元素的ID
  • 您好经验,谢谢!我没有复制它,因为所有输入的 ID 值总是不同 id="D=$day?>" 和 id="D=$day?>S=$student?>"
  • 如你所见,我删除了我的评论后,我误读了 ID 的设置方式......
  • 优秀的经验,这就是错误!非常感谢!
  • 它工作完美的家伙。这是我的第一个请求,在您的帮助下很快就解决了。这个地方不错……非常感谢!

标签: jquery input jquery-selectors


【解决方案1】:

我相信这条线是问题所在

var claimedid = $(".claimed").attr('id');

该类有多个输入元素。

您可以改用$(this),因为您的事件处理程序的范围绑定到触发事件的特定元素。

【讨论】:

    猜你喜欢
    • 2012-05-07
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 1970-01-01
    • 2023-04-03
    • 2014-08-19
    • 1970-01-01
    相关资源
    最近更新 更多