【问题标题】:Jquery: Autofill multiple input fields with value based on dropdown selectionJquery:使用基于下拉选择的值自动填充多个输入字段
【发布时间】:2021-03-07 09:51:57
【问题描述】:

我想用从下拉列表中选择的值填充多个输入字段。下面是我的代码

选择:

<div class="col-4">
    <select class="custom-select" id="slbrand">
       <option selected>Please Select</option>
       <option data-brand="Toyota" value="1">Toyota</option>
       <option data-brand="Nissan" value="2">Nissan</option>
       <option data-brand="Mazda" value="3">Mazda</option>
    </select>

HTML 字段(共有 68 个):

<table id="producttable" class="display table table-bordered mt-2" style="width:100%" cellspacing="0">
        <thead>
            <tr>
                <th>Metrics</th>
                <th>Value</th>
             </tr>
        </thead>
        <tbody>
<tr>
   <td class="labelfont">Wheels</td>
   <td><input id="row-1-value" name="row-67-value" type="text"></td>
</tr>
.
.
.
<tr>
  <td class="labelfont">Steering</td>
  <td><input id="row-68-value" name="row-68-value" type="text"></td>
</tr>

JQUERY:

//I can fill for one field, but how can I change it to fill all the row values
$('#slbrand').change( function() {
    //Autofill input ward fields with option value
    $("[input]").each(function () {
        $('#row-1-value').val($(this).attr('data-brand'));
    });
});

【问题讨论】:

    标签: jquery


    【解决方案1】:

    不需要使用循环,只需这样做

    $('input[id^=row-]').val("what you want");
    

    $('input[id^=row-]') 表示选择inputidrow- 开头的所有标签

    fyi 在循环中

    $("[input]").each(function () {
        $('#row-1-value').val($(this).attr('data-brand'));
    });
    

    $(this) 引用的不是你的值,而是选择器[input]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-14
      • 2021-12-21
      • 2012-05-18
      • 1970-01-01
      • 1970-01-01
      • 2021-08-05
      • 2020-03-31
      • 1970-01-01
      相关资源
      最近更新 更多