SORU
27 Ocak 2010, ÇARŞAMBA


Ekleme satırlar dinamik olarak jQuery ile

Birden fazla isteğe bağlı girişler gerekir bir form inşa ediyorum, ben aslında bu

form example

Form girişi yeni bir satır şeklinde eklenecek bir kullanıcı presler her zaman artı düğmesini, nasıl bir WordPress kullanmak içinde olabilir mi?Ayrıca, tüm satırları otomatik olarak yeni bir satır eklemek mümkün(veya sadece son satırı, eğer daha kolay / daha hızlı ise)dolu?Bu şekilde kullanıcı artı düğmesine basın gerek yok.

Belki bu tür temel bir soru ama jQuery ile hala çok yeşil sorduğum için özür dilerim, PHP ile bunu yapabilirim ama Javascript / jQuery buraya daha uygun bir rol oynar eminim.

Şimdiden teşekkürler!


@alex:

<!DOCTYPE html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
<script type="text/javascript">
$form = $('#personas');
$rows = $form.find('.person');

$('a#add').click(function() {
    $rows.find(':first').clone().insertAfter($rows.find(':last'));
    $justInserted = $rows.find(':last');
    $justInserted.hide();
    $justInserted.find('input').val(''); // it may copy values from first one
    $justInserted.slideDown(500);
});
</script>
</head>

<body>
<form id="personas" name="personas" method="post" action="">
  <table width="300" border="1" cellspacing="0" cellpadding="2">
    <tr>
      <td>Name</td>
      <td>More?</td>
    </tr>
    <tr class="person">
      <td><input type="text" name="name[]" id="name[]" /></td>
      <td><a href="#" id="add"> </a></td>
    </tr>
  </table>
</form>
</body>
</html>

CEVAP
27 Ocak 2010, ÇARŞAMBA


Bu Sana yakın olsun, Ekle düğmesi bu düşünebilirsiniz diye masanın dışına çıkarıldı...

<script type="text/javascript">
    $(document).ready(function() {
        $("#add").click(function() {
          $('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
          return false;
        });
    });
</script>

HTML bu gibi görünüyor

  <a  id="add"> </a></td>
  <table id="mytable" width="300" border="1" cellspacing="0" cellpadding="2">
  <tbody>
    <tr>
      <td>Name</td>
    </tr>
    <tr class="person">
      <td><input type="text" name="name" id="name" /></td>
    </tr>
    </tbody>
  </table>

EDİTEkle.. sonra bir textbox değeri boş

    $('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
    $('#mytable tbody>tr:last #name').val('');
    return false;

EDİT2Kendimi Tutamadım, eklenen TR tüm açılan listesini sıfırlamak için bunu yapabilirsiniz

$("#mytable tbody>tr:last").each(function() {this.reset();});           

Gerisini size bırakıyorum!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 99being99

    99being99

    2 EYLÜL 2008
  • Bryan Adams

    Bryan Adams

    30 Mart 2006
  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011