【问题标题】:Populate multiple fields with javascript使用 javascript 填充多个字段
【发布时间】:2013-12-29 16:20:13
【问题描述】:

我是 javascript 新手,无法一键填充许多字段。

<script>
  function addTxt(txt, field)
  {
      var myTxt = txt;
      var id = field;
      document.getElementById(id).value = myTxt;
  }
</script>

<input type="text" name="xx" id="info" autofocus="required">
<p><a  href="#" onclick="addTxt('x', 'info')">x</a></p>

我还有 3 个字段。

谢谢。

【问题讨论】:

  • 如果您是新手,这(可悲)对您来说有点复杂。让自己更轻松,将&lt;a&gt; 替换为&lt;button&gt; 或其他东西
  • @Deryck 我怎样才能用
  • 所使用的元素对此没有任何影响。
  • 你当前的函数可以简化为function addTxt(txt, id){ document.getElementById(id).value = txt; }。无需将参数复制到新的局部变量。
  • @BrunoGhisi 只需将您的 &lt;a&gt; 替换为 &lt;button onclick="addTxt('x', 'info')" type="button"&gt;X&lt;/button&gt;,您就可以使用 CSS 将其格式化为世界上任何东西

标签: javascript field populate


【解决方案1】:

你可以使用

function addTxt(txt, ids)
{
    for (var i=0, l=ids.length; i<l; ++i) {
        document.getElementById(ids[i]).value = txt;
    }
}

然后这样称呼它

addTxt('Some text', ['id1', 'id2', 'id3']);

【讨论】:

    【解决方案2】:

    您可以填充多个字段。我分享了一个 jsfiddle 链接。您可以使用此代码填充多个字段。

    function addTxt(_val, _id,_no)
      {
    
      var _myTxt = _val;
      var _id = _id;
      for(var i=1;i<=_no;i++){
        document.getElementById(_id+i).value = _myTxt;
      }
    

    }

    Click here to see DEMO

    【讨论】:

    • 为什么所有变量都以_开头?
    • 我在 jsfiddle 上更新了我的代码。现在您可以使用此代码填充多个数据。请检查一下。 Click here DEMO
    • 我们可以在变量或标识符中使用_。
    • @Abhinav015 非常感谢!
    • 没关系。你能提高我的声誉或投票吗?这样我就能更有效地解决问题
    【解决方案3】:

    我认为您不需要函数来执行此操作。

    随便用

    document.getElementById('id1').value
        = document.getElementById('id2').value
        = document.getElementById('id3').value
        = 'Some text';
    

    或者,如果您认为document.getElementById 太长,请使用快捷方式:

    var get = document.getElementById;
    /* ... */
    get('id1').value = get('id2').value = get('id3').value = 'Some text';
    

    【讨论】:

      【解决方案4】:

      尝试通过 tagName 或 className 而不是通过 id 获取元素,然后使用 for 循环遍历每个元素。

      【讨论】:

        猜你喜欢
        • 2023-03-11
        • 1970-01-01
        • 2014-07-13
        • 1970-01-01
        • 2015-01-20
        • 2016-04-24
        • 2016-06-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多