søndag den 1. maj 2011

xlinks, forskellig browser opførsel for grafiske "input buttons" i HTML

Der har været et problem med forskellig browser opførsel når man brugte input type image som knap i HTML. Nogen gange var det som værdier ikke blev sendt med.
Det var første gang opserveret i "Opera" web browseren men det blev ikke givet meget tanke da "Firefox", "Chromium" and Dooble" alle opførte sig som forvendtet.
Men efter en opdatering af "Firefox" blev det klart at det ikke bare var et tilfælde af fjollet opførsel da den pluslig opførte sig som "Opera".

En lille opklaring viste at de forventede variabler fra input ikke indeholdte noget data.
Jeg har altid brugt HTML input type image som en hvilket som helst anden input type og brugt "name" attributen til at opløse dens værdi. Men ved at grave lidt dybere hos 3w fandt jeg ud af at typen faktisk bliver behandlet som et "clickable map" der sender to variabler $name.x $name.y, hvis der ikke gives noget navn er det bogstavligt 'name.x' and 'name.y'. Hvis der ikke bliver klikket på "clickable map"  men der istedet bruges enter bliver værdierne der returneres af $name.x and $name.y 0 for alle "input type image" i den pågældene form. Det gør det svært at finde ud af hvilket billede der blev valgt.

"Logikken" bag de to forskellige opførselser er også nedarvet af alternativ tekst funktion, hvor nogle browsere gør den "clickable" og herved anerkende brugen som submit knap, mens andre ikke vil.

Sammenholdt med et virsuelt fortolkings problem med input type image at funktionen ikke er ønsket som submit knapper i HTML

Det skal ydermere noteres at i nogen programmerings sprog vil variabel blive sendt som $name_x og $name_y.

Ingen kommentarer:

Send en kommentar

Baggrunden for opslag og artikler her på AOit er mine mere end sidste ti års erfaringer i drift og brug af LAMP platformen til at løse et utal af opgaver. En platform der består af Linux, Apache, MySQL og PHP. Alle fire frit og åben software og til at presentere data som som information bruger jeg HTML til formatering og CSS til layout.