Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: js problem
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
john_doe
Witam,

chciałbym zrobić coś takiego jak tutaj. Czyli mam sobie pole textarea i po naciśnieciu buttona w tym polu pojawiają mi się znaczniki html.

  1.  
  2. <head>
  3.  
  4.  
  5. <script type="text/javascript" src="bbCode.js"></script>
  6.  
  7. </head>
  8.  
  9.  
  10. <input type="button" value="BOLD" onclick="bold()" />
  11.  
  12. <textarea id="myDivElem" rows="10" cols="50"> </textarea>
  13.  
  14. </body>
  15.  
  16. </html>


kod js

  1. function bold()
  2. {
  3. var string;
  4. string = "<b></b>";
  5.  
  6. myDiv = document.getElementById("myDivElem");
  7.  
  8. myDiv.innerHTML = string;
  9. }


no i coś tam już działa i licho tzn. zadziała tylko raz. drugie przyciśniecie przycisku już nie dodaje ponownie znaczników. Po zmazaniu tego co się pojawiło i ponownym wcisnięciu buttona też nic nie powoduje. Dopiero gdy załaduję stronę w nową zakładkę.
jakieś wskazówki?

krystian
EarthCitizen
Źle się odwołujesz do wartości pola textarea, zamiast innerHTML użyj value:
Kod
myDiv.value = string;
john_doe
no dobrze. teraz po zmazaniu i ponownym wciśnięciu buttona znaczniki się pojawiają. Ale gdy np wstawię sobie jakiś tekst lub np gdy zmarzę znacznik zamykający tego bolda to ponowne wciśnięcie buttona powoduje zastąpienie wszystkiego co jest w textarea sad.gif

EDIT:

oczywiście

  1. pozdromyDiv.value += string;


i elegancko

pozdro
EarthCitizen
Jak Ci napiszę jak dodać tekst z przodu lub na końcu tekstu w textarea to zaraz się zapytasz a jak dodać znaczniki w miejscu kursora albo po bokach zaznaczenia więc może zrób tak jak z bbcode np jak tu: http://forum.php.pl/index.php?showtopic=46...zenie++textarea
john_doe
smile.gif nie no to mi wystarczy. Efekty zamierzony osiągnięty. Dzięki
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.