Jquery div div

Im folosind următorul jQuery pentru a adăuga dinamic un element de formă în vizualizarea șinelor mele .. Butonul de adăugare de lucrări, dar butonul de eliminare nu este clicabil ..

$(document).ready(function() {
           $('#btnAdd').click(function() {
               var num     = $('.clonedInput').length;
               var newNum  = new Number(num + 1);

               var newElem = $('#input' + num).clone().attr('id', 'input' + newNum);

               newElem.children(':first').attr('id', 'name' + newNum).attr('name', 'name' + newNum);
               $('#input' + num).after(newElem);
               $('#btnDel').attr('disabled','');

               if (newNum == 5)
                   $('#btnAdd').attr('disabled','disabled');
           });

           $('#btnDel').click(function() {
               var num = $('.clonedInput').length;

               $('#input' + num).remove();
               $('#btnAdd').attr('disabled','');

               if (num-1 == 1)
                   $('#btnDel').attr('disabled','disabled');
           });

           $('#btnDel').attr('disabled','disabled');
       });

Iată codul de formular:

<form id="myForm">
    <div id="input1" style="margin-bottom:4px;" class="clonedInput">
        Name: <input type="text" name="name1" id="name1" />
    </div>

    <div>
        <input type="button" id="btnAdd" value="add another name" />
        <input type="button" id="btnDel" value="remove name" />
    </div>
</form>

MULȚUMIRI!!!!!

1

5 răspunsuri

Încercați metoda live a jQuery

$('#btnDel').live('click', function() {
               var num = $('.clonedInput').length;

               $('#input' + num).remove();
               $('#btnAdd').attr('disabled','');

               if (num-1 == 1)
                   $('#btnDel').attr('disabled','disabled');
           });

http://api.jquery.com/live/

1
adăugat
-1 deoarece .live în deprecated în jQuery noi folosiți metoda .delegate sau .on.
adăugat autor Priyank Patel, sursa
consultați link-ul atașat al dvs. este în categoria amortizată.
adăugat autor Priyank Patel, sursa

try this fiddle http://jsfiddle.net/269HU/

use $("#id").attr('disabled',false);   --> for enable

și

use $("#id").attr('disabled',true);   --> for disable
1
adăugat

Answer is found and explained here... http://digitalmeaning.co/thoughts/using-jquery-to-duplicate-a-section-of-a-fsaum-maintaining-accessibility/

"Pentru versiunea ulterioară a jQuery, schimbați codul butonului fie la

$ ( „# BtnDelW1 ') Attr («dezactivat», adevărat).;

sau

$ ( „# BtnDelW1 ') Attr («dezactivat», fals).;

0
adăugat

Încercați să eliminați

.click(function() {

cu asta

.on('click',function() {
0
adăugat
mulțumesc, dar încă nu funcționează ..
adăugat autor js111, sursa
utilizați clasa în loc de id. și folosiți funcția $ (this) în interiorul funcției pentru a indica elementul clicat.
adăugat autor Priyank Patel, sursa

$('#btnDel').attr('disabled', ''); doesn't actually remove the disabled property - it just sets it to the empty string, and it's still active when blank! Use this instead:

           $('#btnDel').removeAttr('disabled');

jsFiddle: http://jsfiddle.net/LzdHg/

0
adăugat