Autor | Zpráva | ||
---|---|---|---|
matak Profil |
#1 · Zasláno: 6. 1. 2008, 17:46:14
Asi dva dny jsem ztrávil s tímto kódem, resp. tohle je jen vytáhnutý problém. Jméno formulářového pole description je rezervované? Nikdy jsem nic takového neslyšel? Je to bug nebo má chyba?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Description problem in IE!!</title> <meta name="author" content="TEST" /> <meta name="copyright" content="TEST" /> <meta name="description" content="TEST" /> <meta name="keywords" content="TEST" /> <meta name="language" content="cs" /> </head> <body> <textarea name="description" id="description"></textarea> <script type="text/javascript"> function set() {document.getElementById('description').value='changed!';} </script> <input type="submit" name="test" value="change" onclick="set()" /> </body> </html> |
||
tiso Profil |
#2 · Zasláno: 6. 1. 2008, 17:50:04
<meta name="description"
<textarea name="description" |
||
matak Profil |
#3 · Zasláno: 6. 1. 2008, 18:03:00
no jiste to vidím, xhtml tohle zakazuje?jak tedy použít pole ve formuláři které se nazývá description?
|
||
Chamurappi Profil |
#4 · Zasláno: 6. 1. 2008, 18:30:24
Reaguji na mataka:
„Jméno formulářového pole description je rezervované?“ Není. V žádném prohlížeči, pokud vím. „Nikdy jsem nic takového neslyšel?“ To nevím, ale je to zajímavá otázka. „xhtml tohle zakazuje?“ I kdyby to zakazovalo, tak to nic neznamená, protože prohlížeče tvůj kód zpracovávají jako HTML se zbytečnými lomítky. Uvedený kód jsem sice nezkoušel, ale na první pohled v něm nevidím problém. Nemáš někde na webu živou ukázku? |
||
habendorf Profil |
#5 · Zasláno: 6. 1. 2008, 18:56:55
Stačí vyhodit meta, nebo přejmenovat textareu.
|
||
matak Profil |
#6 · Zasláno: 6. 1. 2008, 19:01:15
vyhodit meta je blbe ne? přece jen ještě nějaké vyhledávače to zajímá.
změnit textareu je jedna možnost ale databáze má sloupec pojmenovaný description, ano slo by to pri zpracovani priradit z jine promene ale není to moc čisté řešení, že? v podstatě je asi jediné co mne teď napadá myslel jsem že xhtml ma omezení jen na id, neveděl jsem že nějaký parser kontroluje name, a ani nevím jestli je to dobré, vždy není tak neobvyklé že na jedné stránce je více formulářů se s tejnými name, co treba nejaka js gui aplikace kde se modální boxy neotvírají v novém okně apod. |
||
habendorf Profil |
#7 · Zasláno: 6. 1. 2008, 19:04:16
matak
Tady přece nejde o name, pracuješ s tím přes id. |
||
Chamurappi Profil |
#8 · Zasláno: 6. 1. 2008, 19:11:13
Reaguji na habendorfa:
To jsou věci. Ono se to fakt tluče. Reaguji na mataka: „myslel jsem že xhtml ma omezení jen na id, neveděl jsem že nějaký parser kontroluje name“ 1) Tohle není XHTML. Všechny prohlížeče to berou jako HTML, včetně Exploreru. I HTML má pravidlo o unikátních ID. Atributy name nemusí být unikátní. 2) Explorer má podivně se chovající metodu document.getElementById(). Změň atribut id elementu <textarea> (neměň ovšem name) a vyhledávej ho v JS podle této změněné (unikátní) hodnoty. Tím dosáhneš toho, že se formulářové políčko bude z hlediska zpracování tvářit stejně a skript bude fungovat. |
||
habendorf Profil |
#9 · Zasláno: 6. 1. 2008, 19:17:38
Chamurappi
To jsou věci. Ono se to fakt tluče. Já vím, zkoušel jsem to :o) |
||
matak Profil |
#10 · Zasláno: 6. 1. 2008, 19:21:22
no to mne take napadlo problem je v tom ze fckeditor potrebuji aby id i name byli stejne a na tomto poli je fckeditor volitelny tedy metodou replacetextarea se nahrazuje area za fck
Tady přece nejde o name, pracuješ s tím přes id. asi jak už psal chamurappi, id je unikátní to je dodrženo v tom problém není, jde o name |
||
Chamurappi Profil |
#11 · Zasláno: 6. 1. 2008, 20:04:34
Reaguji na mataka:
„fckeditor potrebuje aby id i name byli stejne“ K čemu to potřebuje? Za stávajícího stavu tu <textareu> podle id stejně v Exploreru nenajde, ne? Jestli trváš na zachování stávajícího kódu, můžeš po načtení stránky JavaScriptem smazat všechny <meta> elementy. |
||
matak Profil |
#12 · Zasláno: 6. 1. 2008, 20:11:51
No potrebuje to, kazdopadne kod fckeditoru menit nebudu je to proste jeho podminka, aby mohl najit textareu a nahradit fckeditorem. je to někde v popisu FCKeditorAPI na wiki.fckeditor.net.
Pokud jde o upravy v ramci administracniho prostredi vyresil jsem to tak ze jsem smazal meta description tag, ovšem chtěl jsem aby uživatelé si mohli zpravovat články přímo na live situ a tady to budu asi řešit změnou toho name elementu a při zpracování ho přiřadím zpět k description. Nic lepšího asi nevymyslím, každopádně šlo mi o to jestli je chyba u mne nebo se IE chová divně, už takhle mi dalo dost dlouho najít v 5000 řádků kódu tuhle chybu. |
||
Časová prodleva: 16 let
|
0