Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript] NIE przerywanie się stringów, Prawie banalny problem, ciężki do nazwania
Skie
post
Post #1





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Witam,
mam taki problem ze skryptem JS. Jego działanie polega na tworzenie listy użytkowników w danym elemencie strony. Lista ta zawiera się między znacznikami <ul> i </ul>, a każda pozycja na liście jest w ten sposób dodawana przez JS:

Kod
usersList += "<li onclick=javascript:\"$D('"+obj.id+"').value='"+name[i]+"';\">"+name[i]+"</li>";


Łatwo się domyśleć o co chodzi (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Niestety taki kod "łamie się" w miejscu value='"+name[i]+"', ponieważ name[i] nie jest jednym wyrazem, lecz dwoma lub czasami trzema i stworzona lista wygląda (już w HTML, dla użytkownika załóżmy "Adam Nowak") tak:

<li ;="'" nowak="" onclick="java script:$D('pname').value='Adam">Adam Nowak</li>

a powinno tak:

<li onclick="java script:$D('pname').value='Adam Nowak'">Adam Nowak</li>

Czy mógłby mi ktoś poprawić ten kod JS?
Go to the top of the page
+Quote Post
nevt
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


Kod
usersList += "<li onclick=\"javascript:$D('" + obj.id + "').value='" + name[i] + "'\">" + name[i] + "</li>";
Go to the top of the page
+Quote Post
decha-design
post
Post #3





Grupa: Zarejestrowani
Postów: 415
Pomógł: 46
Dołączył: 26.05.2007
Skąd: Sandomierz

Ostrzeżenie: (0%)
-----


musiałbym spróbować z całym kodem, ale zobacz to:

  1. usersList += '<li onclick="javascript:$D(''+obj.id+'').value=''+name[i]+'';">'+name[i]+'</li>';
Go to the top of the page
+Quote Post
Skie
post
Post #4





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Ani to, ani to nie działa.

Jak chcesz z całym kodem to se wstaw za name[i] np. "Adam Nowak" i sam zobacz.
Go to the top of the page
+Quote Post
nevt
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


mój kod działa w 100% - musisz mieć jakiś inny problem kolego... przetestuj sobie:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  4. </head>
  5. function test()
  6. {
  7. var usersList = '';
  8. var obj = {id: 123};
  9. var name = ['Adam Nowak'];
  10. var i = 0;
  11. usersList += "<li onclick=\"javascript:$D('" + obj.id + "').value='" + name[i] + "'\">" + name[i] + "</li>";
  12. alert(usersList);
  13. }
  14. <body onload="test();">
  15. </body>
  16. </html>


a przy okazji, następnym razem, za takie odzywki:
Cytat
Jak chcesz z całym kodem to se wstaw ...

zamknę temat, to ty tu prosisz o pomoc i należy się trochę szcunku osobom próbującym jej udzielić, to ty masz problem i ty se sprawdzasz rozwiązania...
Go to the top of the page
+Quote Post
Skie
post
Post #6





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Jednak działa Twój sposób. Zapomniałem skasować ';'

A co do

Cytat
Jak chcesz z całym kodem to se wstaw ...


To przecież nie ma w tym nic złego ani obraźliwego ani nie podważającego szacunku do osoby, do której się zwracam.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 17:58