Динамическая таблица не работает должным образом - PullRequest
0 голосов
/ 18 октября 2019

У меня есть два выпадающих списка, один вне таблицы, другой внутри столбца таблицы. Теперь, как заполнить невыбранные данные из одного раскрывающегося списка в другое.

Например, если я выбираю одно значение из 1-го раскрывающегося списка (вне раскрывающегося списка таблиц), оставшиеся невыбранные значения копируются только во 2-й раскрывающийся список (внутри раскрывающегося списка динамических таблиц). и если я нажму добавить строку, те же самые 2-ые раскрывающиеся данные будут поступать динамически добавленными строками.

Я почти готов, но первая строка таблицы является проблемой, я хочу, чтобы в первой строке таблицы также отображались невыбранные данные из первого раскрывающегося списка (вне Dd.)

$(document).ready(function() {
  $("#cashacc_sel").html($('#cashacc').html());
  var i = 1;
  $("#add_row").click(function() {
    var oSelectedValue = $('#cashacc').val();
    $('#addr' + i).html("<td><input name='cashpayment[" + i + "]' type='text' placeholder='A/c code' id='cashacc_code' class='sel_text form-control input-md'/></td><td><select class='sel_sel cashacc_sel form-control input-md' name='cashpayment[" + i + "].name' id='dynamic_sel" + i + "'><option>Choose an items</option></select></td><td><input name='cashpayment[" + i + "]' type='text' placeholder='Enter your text here' class='form-control input-md' id='acc_narrat' data-toggle='modal' data-target='#accnarratModal' /></td><td><input  name='cashdebt[" + i + "]' type='text' placeholder='Debit Amount' class='form-control input-md' id='cashdeb'data-action='sumDebit'></td><td><input  name='cashcredit[" + i + "]' type='text' placeholder='Credit Amount' data-action='sumCredit' class='form-control input-md' readonly></td>");
    // {/* <td>" + (i + 1) + "</td> */}
    $("#cashacc_sel").find("select").append().appendTo($("#dynamic_sel"));
    $('#tab_logic').append('<tr id="addr' + (i + 1) + '"></tr>');
    $("select[name='cashpayment[" + i + "].name']").html($('#cashacc option:not(:selected)'));
    $("#cashacc").html($('#cashacc_sel').html());
    $("#cashacc").val(oSelectedValue);
    bindScript();
    i++;
  });
  $("#delete_row").click(function() {
    if (i > 1) {
      $("#addr" + (i - 1)).html('');
      i--;
    }
  });
  bindScript();
});

// Get value from dropdown to show text box using class
function bindScript() {
  $(document).find('.sel_sel').on("change", function() {
    $(this).parent().parent().find('.sel_text').val($(this).val());
  })
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="form-group col-4" style="margin-bottom: 20px;">
  <label class="col-sm-12 control-label p-sm-0 input-group"> First Dropdown:</label>
  <select class="form-control selectsch_items" name="cashacc" id="cashacc" required>
    <option value="">Choose an items</option>
    <option value="acc1">joe 1</option>
    <option value="acc2">joe 2</option>
    <option value="acc3">joe 3</option>
  </select>
</div>

<div class="container">
  <div class="row clearfix">
    <div class="col-md-12 column">
      <table class="table table-bordered table-hover" id="tab_logic">
        <thead>
          <tr style="background-color: #680779; color: #fff;">
            <th class="text-center">
              Code
            </th>
            <th class="text-center">
              Name*
            </th>
            <th class="text-center">
              Text*
            </th>
            <th class="text-center">
              Initial amount*
            </th>
            <th class="text-center">
              First Payment
            </th>
          </tr>
        </thead>
        <tbody>
          <a id="add_row" class="btn btn-default pull-left adRow">Add Row</a><a id='delete_row' class="pull-right btn btn-default adRow" style="margin-right: 5px;">Delete Row</a>
          <tr id='addr0'>
            <td>
              <input type="text" id="cashacc_code" name='cashacc_code' placeholder='Enter Code' class="form-control sel_text" />
            </td>
            <td>
              <select class="form-control sel_sel" name="cashacc_sel" id="cashacc_sel">
                <option value="">Second dropdown</option>
              </select>
            </td>
            <td>
              <input type="text" class="form-control" id="acc_narrat" placeholder="Enter your text here" name="acc_narrat" data-toggle="modal" data-target="#accnarratModal" />
            </td>
            <td>
              <input type="number" id="cashdeb" name='cashdebt' placeholder='Amount 1' data-action="sumDebit" class="form-control" />
            </td>
            <td>
              <input type="number" id="cashcredit" name='cashcredit' placeholder='Amount 2' data-action="sumCredit" class="form-control" readonly />
            </td>
          </tr>
          <tr id='addr1'></tr>
        </tbody>
      </table>
    </div>
  </div>
</div>

Надеюсь, мой вопрос понятен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...