如何在一次又一次更改时添加元素

时间:2015-12-18 18:19:49

标签: jquery

我使用display:none和.show()来执行此操作。 但我想使用.append() 当更改第一个元素,附加第二个元素和更改第二个元素时附加第三个元素...

http://jsfiddle.net/xtb51wed/659/

$('#sel1').change(function() {
    $('#sel2').show();
});
$('#sel2').change(function() {
    $('#sel3').show();
});
$('#sel3').change(function() {
    $('#sel4').show();
});
$('#sel4').change(function() {
    $('#sel5').show();
});

1 个答案:

答案 0 :(得分:1)

如果是最后一次下拉列表clone closest tr,则更改下拉列值并附加到table。由于下拉动态是动态生成的,因此使用事件委托。

$(document).on('change','.sel',function() {
    if($(this).closest('tr').next('tr').length==0){
        var newTr = $(this).closest('tr').clone();
        $('table').append(newTr);
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tr>
    <td>
      <select class='sel'>
          <option value='1'>value1</option>
          <option value='2'>value2</option>
          <option value='3'>value3</option>
          <option value='4'>value4</option>
          <option value='5'>value5</option>
      </select>
   </td>
 </tr>
</table>