Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][HTML] Zawijanie wierszy w polu textarea
peja1990
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 1
Dołączył: 4.12.2010

Ostrzeżenie: (10%)
X----


Witajcie, mam pewien problem ze skryptem gdyż powinien działać a nie działa...
Mianowicie chodzi o skrypt, który po kliknięciu w przycisk powinien zmienić w polu textarea wartość atrybutu wrap na off, czego wynikiem powinno być nie zwijanie wierszy w w/w polu.

Skrypt zmienia atrybut lecz w polu textarea jest brak reakcji (ciągle zwija wiersze), lecz gdy 'ręcznie' w kodzie ustawię wartość atrybutu wrap na off to działa elegancko czyli nie zawija wierszy.

Mój przycisk:
  1. <div id="wrap">Nie zawijaj wierszy</div>


Skrypt:
  1. $(document).ready(function() {
  2. $('#wrap').click(function(){
  3. $('#textarea').attr('wrap', 'off');
  4. });
  5. });


Pole textarea:
  1. <textarea name="filecontent" id="textarea" style="overflow:auto" wrap="virtual"><?php
  2. $line_num = 0;
  3. $fp = fopen($edit,"r");
  4. while(!feof($fp)) {
  5. $line = fgets($fp,1024);
  6. echo htmlspecialchars($line);
  7. $line_num++;
  8. }
  9. fclose($fp);


Bardzo proszę Was o pomoc bo ja nie rozumiem dlaczego nie działa kiedy powinno działać (IMG:style_emoticons/default/wink.gif) )
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
pianta_d
post
Post #2





Grupa: Zarejestrowani
Postów: 176
Pomógł: 18
Dołączył: 5.01.2007

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


Cytat
wartość atrybutu wrap na off


Może powinno być nowrap

Poczytaj
Go to the top of the page
+Quote Post
peja1990
post
Post #3





Grupa: Zarejestrowani
Postów: 150
Pomógł: 1
Dołączył: 4.12.2010

Ostrzeżenie: (10%)
X----


Dobrze kolego, ale Ty piszesz o białych znakach white-space czyli CSS, a ja piszę o atrybucie pola textarea wrap.
Poza tym kiedy ustawię ręcznie w kodzie wartość atrybutu wrap na off to działa elegancko (IMG:style_emoticons/default/wink.gif)

EDIT!
Dodam, że zrobiłem teraz na zasadzie klasy CSS tak jak proponował kolega wyżej, ale nadal jest to samo.
Klasę dodaje ale pole textarea na nią nie reaguje, nie dodaje dolnego suwaka... ;/

Ten post edytował peja1990 20.10.2011, 14:03:03
Go to the top of the page
+Quote Post
kamil4u
post
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


Spróbuj w takim razie użyć CSS i white-space.

Tu taka zagadka:
http://www.w3schools.com/html5/att_textarea_wrap.asp

--edit--
A umieść jakiś przykład na żywo np. tu: http://jsfiddle.net/

Ten post edytował kamil4u 20.10.2011, 14:08:45
Go to the top of the page
+Quote Post
pianta_d
post
Post #5





Grupa: Zarejestrowani
Postów: 176
Pomógł: 18
Dołączył: 5.01.2007

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


Cytat
Atrybut WRAP nie wchodzi w skład specyfikacji HTML 4.01 - zaleca się stosowanie stylów.


Źródło
Go to the top of the page
+Quote Post
peja1990
post
Post #6





Grupa: Zarejestrowani
Postów: 150
Pomógł: 1
Dołączył: 4.12.2010

Ostrzeżenie: (10%)
X----


Patrz kolego, teraz zrobiłem to poprzez dodanie atrybutu jak i klasy css, pięknie zmienia klasę jak i atrybut ale nadal pole nie reaguje.. ;/

CSS:
  1. form[name="form"] textarea[name="filecontent"].normal {float:left;margin:10px 0;padding:10px;width:700px;min-height:500px;font:normal 8pt Verdana, sans-serif;text-align:left;text-transform:none;font-weight:normal;font-style:normal;font-size:8pt;color:#10435E;overflow:auto;white-space:normal;}
  2. form[name="form"] textarea[name="filecontent"].nowrap {float:left;margin:10px 0;padding:10px;width:700px;min-height:500px;font:normal 8pt Verdana, sans-serif;text-align:left;text-transform:none;font-weight:normal;font-style:normal;font-size:8pt;color:#10435E;overflow:auto;white-space:nowrap;}


java script:
  1. $(document).ready(function() {
  2. $("#wrap").click(function(){
  3. var wrap = $("#textarea").attr("wrap");
  4. if(wrap == "virtual") {
  5. $("#textarea").attr("wrap", "off");
  6. $("#textarea").removeClass("normal").addClass("nowrap");
  7. document.getElementById("wrap").innerHTML = "Zawijaj wiersze";
  8. } else {
  9. $("#textarea").attr("wrap", "virtual");
  10. $("#textarea").removeClass("nowrap").addClass("normal");
  11. document.getElementById("wrap").innerHTML = "Nie zawijaj wierszy";
  12. }
  13. });
  14. });


Pole textarea:
  1. <textarea name="filecontent" id="textarea" class="normal" wrap="virtual"></textarea>


EDIT
Pod poniższym linkiem znajduje się skrypt, który powinien działać a nie działa ;( Sami zobaczcie...
http://detronic.pl/

Dodam jeszcze, że teraz sprawdziłem działanie skryptu pod przeglądarką GoogleChrome i działa elegancko (IMG:style_emoticons/default/wink.gif) lecz pod Operą nie działa ;(
Jak myślicie ?
Co może być tego przyczyną ?

Ten post edytował peja1990 20.10.2011, 14:44:18
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: 14.09.2025 - 23:41