繁体   English   中英

为什么 onkeyup 和 keyup 都不起作用?

[英]Why both onkeyup and keyup is not working?

我想显示用户在输入字段中的<a>文本上键入的内容。 我已经在 javascript 中尝试过.onkeyupaddEventListener ,但它们不能同时工作,虽然它可以检测到目标输入对象,但是当它进入.onkeyupaddEventListener它什么都不做。

这是我想要做的:

在此处输入图片说明

当用户在输入字段中输入名字时,它应该显示在<a>超链接文本中(甚至应该应用退格键)

这是我的视图/刀片模板中的片段代码:

<ul class="nav nav-tabs">
    <li class="active"><a data-toggle="tab" href="#guestInfo0">User Information</a></li>
    @for($guest_no = 1; $guest_no<=$guest_quantity; $guest_no++)
        <li>
            <a data-toggle="tab" 
                href="#guestInfo{{$guest_no}}" 
                id = "linkText">Guest #{{$guest_no}} //Target ID = linkText (this is where the changes will be applied)
            </a>
        </li>
    @endfor
</ul>
.......
<input id="passenger_f_name" type="text" 
class="form-control @error('passenger_f_name') is-invalid @enderror" 
placeholder = "First Name for Passenger #{{$tab}}" name="passenger_f_name"
value="{{ old('passenger_f_name') }}" required autocomplete="passenger_f_name" 
autofocus>
.......
<script type="application/javascript">

    var linkBox = document.getElementById('passenger_f_name');

    linkBox.onkeyup = function(){
        //alert("LOL"); //Used for checking if onkeyup is working properly = result: false
        document.getElementById('linkText').innerHTML = linkBox.value;
    }

</script>

我不知道为什么它不起作用但我怀疑控制台日志中 [DOM] 的警告(张贴屏幕截图而不是在这里复制和粘贴,因为它在 google chrome 控制台中没有选项来复制警告消息):

在此处输入图片说明

它有三个输入,因为每个选项卡上都有一个表单和输入,它们具有相同的名称和 ID(取决于 for 循环关于将生成多少表单的条件)。

PS我正在使用:

  • Google Chrome 版本 79.0.3945.130(官方版本)(64 位)
  • JQuery 3.4.1 & Bootstrap 3.4.1
  • Laravel 6.0

您需要唯一的 ID

如果有一个输入字段和 3 个客人,这里是如何做的

 $("#passenger_f_name").on("input",function() { $("li.active .linkText").text(this.value) })
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="nav nav-tabs"> <li><a data-toggle="tab" href="#guestInfo0">User Information</a></li> <li> <a data-toggle="tab" href="#guestInfo{{$guest_no}}" class="linkText">Guest #1</a> </li> <li><a data-toggle="tab" href="#guestInfo0">User Information</a></li> <li> <a data-toggle="tab" href="#guestInfo{{$guest_no}}" class="linkText">Guest #2</a> </li> <li><a data-toggle="tab" href="#guestInfo0">User Information</a></li> <li class="active"> <a data-toggle="tab" href="#guestInfo{{$guest_no}}" class="linkText">Guest #3</a> </li> </ul> <input id="passenger_f_name" type="text" class="form-control" placeholder="First Name for Passenger #{{$tab}}" name="passenger_f_name" value="" required autocomplete="passenger_f_name" autofocus>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM