将ID设置为单击元素时的输入值

Set ID as input value on click of an element

本文关键字:输入 元素 单击 ID 设置      更新时间:2023-09-26

当我点击我的链接时,它会临时弹出该链接的id号。

问题如果我点击链接id会将id添加到id为input[id="language_id"]的输入值

代码预览MY Codepen示例

JQUERY

$(document).ready(function() {
  $(".language li a").click(function(event) {
    // Test make sure getting id
    alert(event.target.id);
  });
});
HTML

<div class="container">
  <ul class="dropdown-menu language" role="menu">
    <li><a href="#" id="1">Test 1</a></li>
    <li><a href="#" id="2">Test 2</a></li>
    <li><a href="#" id="3">Test 3</a></li>
    <br/>
    <br/>
  </ul>
  <form action="" method="post" id="language-form">
    <input type="text" name="language" id="language_id" placeholder="Displays ID" value="" />
  </form>
</div>

有相同ID的元素;这是无效的HTML。更改其中一个或使用类。

Element.id

在文档中必须是唯一的

对于您的问题,使用this.idval()

$('#language_id').val(this.id)   //or event.target.id

更新Codepen

$(".language li a").click(function() {
    $('#language_id').val(this.id)
});

可以通过设置文本框的id属性来改变文本框的id

$(".language li a").click(function(event) {
   document.getElementById('language_id').id =  event.target.id;
});

你可以这样做

$(document).ready(function() {
$(".language li a").click(function(event) {
// Test make sure getting id
//alert(event.target.id);
  $("#language_id").val(event.target.id);
  });
});
$(document).ready(function() {
  $(".language li a").click(function(event) {
    $("#language_id").val(event.target.id);
  });
});

你的元素id应该是唯一的

$(".language li a").click(function(event) {
    $("input[id=language_id]").val(event.target.id);
});

为控件添加多个id请尝试一下:

$(document).ready(function() { $(".language li a").click(function(event) { var str = $('#language_id').val() + "," + this.id; $('#language_id').val(str.replace(/^,?/,"")); }); });