Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] Wstawianie BBcode, Jak zrobić żeby po naciśnieciu anuluj w okienku (prompt) nie wstawiało
RafaelX
post
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 28
Dołączył: 2.01.2009

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


  1. function Img(url)
  2. {
  3. bb(\\"[img]\\\"+((url=sel())?url:prompt(\\\"Podaj adres obrazka\\\",\\\"http://\\\"))+\\\"[/img]\\\")
  4. }


mam taką funkcje i chce aby po naciśnięciu anuluj zamiast wstawiać tag i w środku \"null\" nie dodawało nic po prostu zamykało się okienko i nic się nie działo, próbowałem wstawić tam
  1. if (url!=null) { stop; }

ale nic mi nie wychodziło, a skrypt nawet się nie uruchamiał :/ nie znam się na JS wiec nie wiem ocb

Ten post edytował RafaelX 3.01.2009, 19:56:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ziqzaq
post
Post #2





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

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


To nie jest błąd w moim kodzie tylko w twoim.
Na dowód zobacz sobie test - działa, więc na 95% ty coś źle zrobiłeś.
Poprawiony kod*
  1. <?php
  2. <html>
  3. <head>
  4. <title>Tit</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <script type="text/javascript">
  7.    D=document,S=[],T=[],C=alert,B=unescape;
  8.    window.onload=function(){
  9.        F=D.getElementById('message');
  10.    }
  11.    function bb(tag)
  12.    {
  13.        // Male wyrazonko regularne ;)
  14.        // Pasuje do "[tag]http://znaki.znaki[/tag]"
  15.                            // UWAGA linijka z wyrazeniem reg. powinna wygladac tak (parser escapeuje znaki "\"):
  16.                            // reg = /^[.+?]http://.+?[/.+?]$/i;
  17.        reg = /^[.+?].+?[/w+?]$/i;
  18.        if(tag.match(reg))D.selection?(F.focus(),D.selection.createRange().text=tag):(F.selectionStart||F.selectionStart=='0')?F.value=F.value.substring(0,F.selectionStart)+tag+F.value.substring(F.selectionEnd,F.value.length):F.value+=tag;
  19.    }
  20.    function sel()
  21.    {
  22.        return D.selection?D.selection.createRange().text:F.value.substring(F.selectionEnd||0,F.selectionStart||0)
  23.    }
  24.    function klik() {
  25.        var url = (s=sel())?s:prompt("Podaj adres obrazka","http://");
  26.        if(url!=null && typeof(url)!='undefined')bb("[img]"+url+"[/img]");
  27.    };
  28.    function klik2() {
  29.        Url();
  30.    };
  31.    function Url(u,d)
  32.    {
  33.        var u=prompt("Podaj adres strony","http://");
  34.    }
  35. </script>
  36. </head>
  37. <body>
  38. <div><textarea rows="10" cols="50" id="message" name="message"></textarea></div>
  39. <div><input type="button" value="Klik" id="klik" onclick="klik();return false;" /></div>
  40. <div><input type="button" value="Klik 2" id="klik" onclick="klik2();return false;" /></div>
  41. </body>
  42. </html>
  43. ?>


Edit:
To było do wypowiedzi przed edycją powyżej - już chyba nieaktualne (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Edit2:
Zedytowałem kod*. Dodałem tą funkcję z postu wyżej i dostosowałem wyrażenie.

Ten post edytował ziqzaq 4.01.2009, 13:37:23
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 14:20