Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: duplicateHTML
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
p_korcz
Witam forumowiczów.
Borykam się z takim problemem i liczę na wsparcie. Jeżeli chodzi o formę wdzięczności, to proszę pisać.
Oto część kodu:

  1. <SPAN id=pollopt>
  2. <INPUT class=tbox maxLength=200 size=40 name=poll_option[]>
  3. <INPUT class=tbox id=opto1_color size=7 name=opto1_color>
  4.  
  5.  
  6.  
  7.  
  8. <!-- od tąd jest do poprawienia -->
  9. <script type=text/javascript>
  10. <!--
  11. var opto1 = new ColorPicker();
  12. opto1.writeDiv();
  13. //-->
  14. <A id=opto1_color_pic onclick="opto1.select(document.frm.opto1_color,'opto1_color_pic');return false;" href="#" name=opto1_color_pic><IMG height=16 alt="wybierz kolor" src="images/palette.gif" width=16 align=absMiddle border=0></A>
  15.  
  16. <!-- dotąd jest do poprawienia -->
  17.  
  18.  
  19.  
  20.  
  21. </SPAN><BR></DIV>
  22. <INPUT class=button onclick="duplicateHTML('pollopt','pollsection')" type=button value="Dodaj dodatkową odpowiedź" name=addoption>
  23.  
  24. <BR></TD></TR>
  25.  


Po kliknięciu w przycisk, -Dodaj dodatkową odpowiedź- pola tekstowe są kopiowane. Tak ma zostać. Chodzi o to, że po kliknięciu w grafikę -wybierz kolor- otwiera się nowe okienko, a po kliknięciu -Dodaj dodatkową odpowiedź- nie działa już skrypt otwierający to okienko.
Wydaje mi się że trzeba tak przerobić skrypt javy ,aby w generował kolejne liczby-wartości liczbowe dla funkcji var opto1
Tylko jak to wstawić do linku :

  1.  
  2. <A id=opto1_color_pic onclick="opto1.select(document.frm.opto1_color,'opto1_color_pic');return false;" href="#" name=opto1_color_pic><IMG height=16 alt="wybierz kolor" src="images/palette.gif" width=16 align=absMiddle border=0></A>
erix
Zamień kolejnością skrypt i link; skrypt poszukuje linka, którego przeglądarka nie zdążyła jeszcze zrenderować...

Taka mała dygresja, zainteresuj się nieinwazyjnym podpinaniem zdarzeń w JS. winksmiley.jpg
p_korcz
Sorki ale to niedziała. Możesz się tym zająć ?
erix
A jakieś komunikaty z konsoli JavaScript? Jakieś błędy, inne artefakty?

Cytat
Możesz się tym zająć ?

Mam swoje skrypty, którymi się zajmuję. tongue.gif przy innych tylko pomagam.
p_korcz
Tak, po kliknięciu w grafikę gdzie pola select są rozwinięte a skrypt przestaje działać, otrzymuję alert "colorpicker.select: Input object passed is not a valid form input object"
Moim bardzo skromnym zdaniem, trzeba by przerobić skrypt ...

  1. <script type=text/javascript>
  2. <!--
  3. var opto1 = new ColorPicker();
  4. opto1.writeDiv();
  5. //-->
  6. <A id=opto1_color_pic onclick="opto1.select(document.frm.opto1_color,'opto1_color_pic');return false;" href="#" name=opto1_color_pic><IMG height=16 alt="wybierz kolor" src="images/palette.gif" width=16 align=absMiddle border=0></A>


tylko jak ?
erix
Cytat
Kod
opto1.select(document.frm.opto1_color,'opto1_color_pic');

A document.forms['frm'].elements['opto1_color'] zamiast pierwszego parametru?
p_korcz
  1. onclick=\"opto1.select(document.forms['frm'].elements['opto1_color_pic']);


alert: 'type' jest pusty lub nie jest obiektem.

  1. onclick=\"opto1.select(document.forms['frm'].elements['opto1_color'],'opto1_color_pic');


W tym przypadku wszystko zaczyna się od początku. Czyli po rozwinięciu dodatkowych pól przestaje działać skrypt.
erix
Możesz debugować przeglądarką, a nie IE?
p_korcz
Może w taki posób. Powieliłem sam skrypt :
  1. <script type=text/javascript>
  2. <!--
  3. var opto1 = new ColorPicker();
  4. opto1.writeDiv();
  5. //-->
  6. <A id=opto1_color_pic onclick="opto1.select(document.frm.opto1_color,'opto1_color_pic');return false;" href="#" name=opto1_color_pic><IMG height=16 alt="wybierz kolor" src="images/palette.gif" width=16 align=absMiddle border=0></A>


kilka razy, zwiększając kolejne wartości. I tak :
var opto1
var opto2
var opto3
var opto4

...
A id=opto1_color_pic
A id=opto2_color_pic
A id=opto3_color_pic
A id=opto4_color_pic

...
I tak dalej, kolejne wartości opto1 zamieniłem na większe liczby. Działa. Wszystkie grafiki otwierają 'okienko'
Dowodzi to teorii, że w skrypcie należy wstawić licznik generujący liczby np.od 01 do 10 i wstawić do linku.
Tylko jak to zrobić questionmark.gif? sciana.gif
erix
Kurs Javascript, pętle.
p_korcz
Nic. Chyba trzeba inaczej.
Zlecę wykonanie tego skryptu. Oferty proszę kierować na maila.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.