2010-10-27 14 views

Odpowiedz

14

Po pierwsze, nie powinny mieć więcej niż jeden element z tej samej ID.

Jednakże, można to zrobić z klas CSS:

<div> 
<textarea class="Text"></textarea> 
<textarea class="Text"></textarea> 
<textarea class="Text"></textarea> 
</div> 

<script> 
    $(".Text").focus(); 
    $(".Text").blur(); 
</script> 
2

Nie można mieć więcej niż jednego elementu o tym samym ID, należy użyć klas, a następnie uzyskać do nich dostęp w ten sposób.

$(".classname").focus() 

A jeśli chcemy się skupić na jednym ID używać

$("#idname").focus() 
0

Nie można/nie powinno mieć wiele elementów o tym samym identyfikatorze. Możesz użyć selektora klasy, ale zdecydowanie naprawię problem z identyfikatorem.

0

Nie możesz mieć więcej niż jeden element o tym samym id nie tylko jest nieprawidłowy html, ale jeśli trageted go za pomocą jquery to tylko efekt pierwszego. powinieneś używać klasy

1

Najlepiej nie używać tego samego identyfikatora dla 2 elementów na tej samej stronie. Inne formy, które ustawia węzłów textarea mogą być

$('textarea').blur() // note it sets all textarea elements on the page 

lub

$('#content textarea, #comment-area textarea').blur() 

lub jeśli utworzyć klasę dla tych węzłów textarea, możesz użyć tego zbyt.

+0

rozwiązać problem. dzięki wszystkim dzięki –

17

Prawo odpowiedź byłaby

$("[id=yourID]").doSomething() 

dla dowolnego kodu podobnego

<textarea id="yourID" /> 
<img id="yourID" /> 
<div id="yourID" /> 

Tak, wiem, to nie jest ważne html jednak pamiętać, że z klasy średniej-deweloperzy często mają do czynienia z problemami "lepszymi" programistami. Sprawdź Microsoft SharePoint na przykład, gdzie wiele identyfikatorów jest bardzo powszechne. I nie możemy powiedzieć naszym klientom, że Microsoft zrobił źle, więc nie możemy im pomóc. Mówimy im, że Microsoft zrobił źle, więc musimy im pomóc ;-)

+1

. Tego właśnie szukałem. –

0

To bardzo proste, jeśli chcesz użyć `$ (" # yourID "). Click (function() {});

0

wykorzystanie jQuery delegat

składnia

jQuery('body').delegate("#your-id","click",function(e){ // do code here }); 
Powiązane problemy