Blog za darmo

Tag-Archive for » xhtml «

Błąd wysłania formularza

Ku pamięci…
Nazwa funkcji w JS nie może być taka sama jak id jakiegoś pola formularza.
FF sobie radzi, opera i m$ – nie.

Żeby nie być gołosłownym…
W pewnym projekcie zaistniała potrzeba użycia javascriptu do submitu formularza z uprzednim podmienieniem wartości pola hidden na wartość podaną jako parametr funkcji.
Czuję, że jak zwykle zakręciłem i nie wiadomo o co mi chodzi.
Do rzeczy więc.
Mamy sobie stronkę:




http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
Form error
name="author" content="Kashub" />

>
<?
if(!empty($_POST)) {
echo '
POST:
' . var_export($_POST, 1) . '

‚;
}
?>

action=„” method=„post” id=„updateWirtForm”>
type=„text/javascript”>
function sru(avid) {
document.getElementById(‚sru’).value = avid;
document.getElementById(‚updateWirtForm’).submit();
}

type=„hidden” name=„sru” id=„sru” value=„” />
href=„#” onclick=„sru(‚1’)”/>wyślij z podmianą hiddena



Na pierwszy rzut oka nic szczególnego – po kliknięciu na link ma się ustawić wartość wpolu hidden i wysłać formularz.
W wyniku spodziewamy się czegoś takiego:

POST:
array (
'sru' => '1',
)

wyślij z podmianą hiddena

… i tak też się dzieje na Firefoksie.
Wszystko było by fajnie, ale spójrzmy co na to np. Opera:

JavaScript - http://localhost/f.php
Event thread: click
Error:

name: TypeError

message: Statement on line 1: The Object does not implement [[Call]]
Backtrace:
Line 1 of script

sru("1");
At unknown location

[statement source code not available]

Również pod m$ie zaawansowany debug wyświetlił niezwykle treściwą informację – „Błąd na stronie”. Być może dało by się gdzieś doczytać komunikat, ale pod winkiem jakoś nie da się ni
c więcej 🙂

Rozwiązanie okazało się bardzo proste, ale nieco nieoczekiwane. Wystarczy zmienić albo nazwę funkcji w javascript albo id hiddena w formie.
Mam nadzieję, że zaoszczędzę komuś nieco czasu dzięki temu wpisowi 🙂

Generator Gradientowych napisów XHTML

Swego czasu nudziło mi się i nie wiedziałem co by sobie tu napisać.
Wtedy to wpadłem na pomysł, żeby napisać taki sobie Generator gradientowych napisów.
Nie miałem żadnego konkretnego w tym celu ani potrzeby, ale być może komuś się to przyda czy na jakiegoś bloga czy choćby dla jaj w jakimś miejscu strony.
Cała zabawa polega na wybraniu koloru początkowego (czyli tego, od którego będziemy zaczynać), końcowego (taki kolor będzie miała ostatnia literka) no i oczywiście wpisaniu swojego tekstu, który zamierzamy pokolorować.
Po wciśnięciu przycisku „Generuj” (tu niespodzianka) zostanie wygenerowany tekst, który płynnie przechodzi z jednego koloru w drugi. W górnym okienku mamy podgląd a w dolnym wygenerowany kod XHTML, który to powoduje właśnie takie a nie inne pokolorowanie tekstu 🙂
Pozostaje nam więc skopiować wygenerowany kod XHTML a dolnego okienka i wkleić go do dowolnego edytora jako kod oczywiście. Do edytorów WYSIWYG można wkleić napis z okienka górnego.
Mam nadzieję, że komukolwiek przyda się ta zabawka. Zapraszam więc do generatora kolorowych napisów xhtml.