![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 119 Pomógł: 0 Dołączył: 15.07.2003 Skąd: Grajewo Ostrzeżenie: (0%) ![]() ![]() |
Problem: Mam grupę linków umieszczonych w różnych blokach DIV, w tych samych blokach są inne linki, z których, po kliknięciu na te pierwsze, chcę wyciągnąć innerHTML, a następnie wstawić do pola TEXTAREA.
Jak na razie udało mi się zrobić tylko to ostatnie:
Chcę uniknąć wpisywania onClick="" każdemu linkowi z osobna, ale nie wiem jak przydzielić je całej grupie elementów o takim samym parametrze w class lub name. Nie wiem też jak odnieść się do elementu relatywnie w stosunku do tego, dla którego zaszło zdarzenie. Przykładowo dwa razy w górę a potem getElementById('link'). Kiedy używam this to wychodzi referencja do dokumentu a nie do elementu wywołującego zdarzenie. Trochę to pogmatwałem, ale mam nadzieję, że rozumiecie o co mi chodzi. Mniej więcej wyglądało by to tak:
Proszę o jakieś wskazówki. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 504 Pomógł: 2 Dołączył: 31.03.2006 Skąd: Londyn Ostrzeżenie: (0%) ![]() ![]() |
To w JS jest dosc skomplikowane bo przy zdarzeniu this nigdy nie bedzie sie odnosilo do obiektu w ktorym definiujesz metode. Ja to robie tak (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Kod var ObjectStorage = new Object(); TestObject = function() { var iObjectId = ObjectStorage.length; ObjectStorage[iObjectId] = this; this.TestVar = 'zawartosc testowa'; document.getElementById('testDiv').onclick = function(e) { ObjectStorage[iObjectId].DoOnClick(e) } } TestObject.prototype = { DoOnClick : function(e) { if(document.all)e = event; var oTarget; if (e.target) { oTarget = e.target; } else if (e.srcElement) { oTarget = e.srcElement; } if (oTarget.nodeType == 3) { //For Safari oTarget = oTarget.parentNode; } alert(oTarget.id); alert(oTarget.innerHTML); alert(this.TestVar); } } document.body.onload = function () { var oObject = new TestObject() } pisalem z palca wiec nie wiem czy syntaxow nie ma itp, ogolnie koncepcja taka jesli chodzi o to zryte referowanie przez JS |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 18:28 |