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

时间:2015-05-15 05:41:38

标签: javascript jquery

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

问题如果我点击某个链接,我该怎么做呢?id会将该ID添加到id为input[id="language_id"]的输入值

代码预览MY Codepen Example

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>

6 个答案:

答案 0 :(得分:2)

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

Element.id

  

在文档中必须是唯一的

对于您的问题,请this.id使用val()

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

<强> Updated Codepen

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

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

你可以这样做

$(document).ready(function() {
$(".language li a").click(function(event) {

// Test make sure getting id
//alert(event.target.id);
  $("#language_id").val(event.target.id);
  });
});

答案 3 :(得分:1)

$(document).ready(function() {
  $(".language li a").click(function(event) {

    $("#language_id").val(event.target.id);
  });
});

答案 4 :(得分:1)

您的元素id应该是唯一的

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

答案 5 :(得分:0)

向控件添加多个ID请试一试:

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