javascript将值从select multiple传递到选定的文本字段

时间:2015-12-02 15:33:07

标签: javascript html

我有多个文本字段和一个选择倍数 像这样

<input type="text" placeholder="1"><br>
<input type="text" placeholder="2"><br>
<input type="text" placeholder="3"><br>
<input type="text" placeholder="4"><br>

<select multiple="multiple">
  <option>One</option>
  <option>Two</option>
  <option>Three</option>
  <option>Four</option>
</select>

我只想说我点击了textfield 1然后点击了选择多个“One”

并且值“One”将传递给textfield 1,因为我点击了之前的文本字段1 ..

如果我点击了文本字段2,那么“One”将传递给textfield 2

3 个答案:

答案 0 :(得分:0)

我希望你意识到你提出了一个错误的问题,因为你没有提供任何尝试。但是,我心情很好,碰巧觉得这对我来说很有趣。

你的jQuery(没有vanilla javascript)将是:

$(document).ready(function() {
  var lastinput = null;
  $("input").click(function() {
    lastinput = $(this);
  });
  $("option").click(function() {
    if (lastinput != null) {
      lastinput.val($(this).text());
    }
  });
});

如此JSFiddle demo

所示

答案 1 :(得分:0)

好的,我可以在这里看到一些jQuery回答,但要求JS 这是JS的一个:

var activeInput = false;
window.onload = function(event) { 
  allInputs = document.getElementsByTagName('input');

  for (i = 0; i < allInputs.length; i++)
  {
    allInputs[i].addEventListener('focus', function(){activeInput = this;});
  }

  allOptions = document.getElementsByTagName('option');

  for (i = 0; i < allOptions.length; i++)
  {
    allOptions[i].addEventListener('click', function(){ if (activeInput){activeInput.value = this.text;}});
  }
}();

答案 2 :(得分:-1)

假设您正在使用jQuery?如果不是,它变得有点困难,但仍然很有可能。

doOpOne

详细了解jQuery的FocusClick函数。