Zacznę od tego znaczników:Dołączanie wielu elementów przy użyciu jQuery
<div>
<span>
<label for="Item[0]">Item #1</label>
<input type="text" value="" name="Item" id="Item[0]"/>
</span>
</div>
Na każdego przycisku kliknij Chcę dodać kolejny rozdział dokładnie jak ten powyżej, ale z indeksem zwiększany.
<div>
<span>
<label for="Item[0]">Item #1</label>
<input type="text" value="" name="Item" id="Item[0]"/>
</span>
</div>
<div>
<span>
<label for="Item[1]">Item #2</label>
<input type="text" value="" name="Item" id="Item[1]"/>
</span>
</div>
Próbuję użyć tego javascript:
$(document).ready(function(){
var count = <%= Items.Count - 1 %>;
$('#AddItem').click(function(e) {
e.preventDefault();
count++;
var tb = $('#Item[0]').clone().attr('id', 'Item[' + count + ']');
var label = document.createElement('label')
label.setAttribute('For', 'Item[' + count + ']')
$('#ItemFields').append(label);
$('#ItemFields').append(tb);
});
});
Więc kilka kwestii:
Dołączanie prace na etykiecie, ale mój sklonowany tekstowe nie.
Etykieta nie zawiera tekstu. Nie mogę znaleźć takiej nieruchomości. Czy ktoś może mi powiedzieć, co to jest?
Nie mogę wymyślić, jak owinąć etykietę i pole tekstowe w div i span. Jeśli spróbuję, to zostanie wyprowadzona [obiekt HTMLLabelElement] zamiast faktycznej etykiety. Jeśli spróbuję podzielić je na wiele instrukcji append, samo kończy działanie div i span. Jestem nowy w jQuery/Javascript, więc nie jestem całkiem pewien, co robię źle.
Działa to świetnie, ale liczba nie wzrasta. – Brandon
Ups, nevermind. Użył identyfikatora zamiast klasy na div. Działa teraz świetnie. Dzięki. – Brandon
Tak, liczba to liczba elementów z klasą "przedmiot". –