Sziasztok!
Problémám az lenne, hogy átalakítottam a search modul kódját, mivel nem tetszett az eredeti mérete és elhelyezkedése, viszont cserébe nem akar működni.
---eleje---
<div id="block-search-form" class="block block-search">
<form action="http://domain.hu/?q=search/node/" method="GET" id="search-block-form" accept-charset="UTF-8"><div><div class="container-inline">
<div class="form-item form-type-textfield form-item-search-block-form">
<input onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'Keresés...':this.value;" type="text" id="edit-search-block-form--2" name="search_block_form" value="Keresés..." size="12" maxlength="128" class="form-text" />
</div>
<div class="form-actions form-wrapper" id="edit-actions"><input type="submit" id="edit-submit" name="op" value="Keresés" class="form-submit" /></div><input type="hidden" name="form_build_id" value="form-nkTufJZivlbJOZAYJKlnrg_o3-GEC-Ehdw9LlRf-_84" />
<input type="hidden" name="form_id" value="search_block_form" />
</div>
</div></form> </div>
---vege---
Bármit írok be a kereső mezőbe csak betölti az oldalt újra és nem történik semmi.
Sanda gyanúm, hogy a generált value érték lesz a hunyó, de nem tudom, hogy tudok ilyen id-t dinamikusan generálni (alap search modul generálja magának) De miért nem lehet ezen hash érték nélkül keresni? Amikor az oldalamon való keresés nem kötött regisztrációhoz, se belépéshez.
Jelenleg ennyit hív meg a domain után: ?search_block_form=rakeresekvalamire&op=Keresés&form_build_id=form-nkTufJZivlbJOZAYJKlnrg_o3-GEC-Ehdw9LlRf-_84&form_id=search_block_form
Ehelyett: ?q=search/node/rakeresekvalamire
Remélem nagyjából érthetően vázoltam fel a problémát, elnézést ha nem világos.
Köszönöm a segítségeteket előre is!
vátárjúduing
http://jsbeautifier.org/
ezzel lehet HTML-t is szépíteni...
====================
Kérdéseim:
'
)onclick="this.value='';"
Értem, hogy mi a célod, de miért csinálsz ilyet? Miért nem hagyod, hogy a júzer döntse el, hogy a korábbi értéket felül akarja-e bírálni, vagy sem? Halál idegesítőek az ilyen dolgok felhasználóként.
onfocus="this.select()"
Lásd előző kérdés.
onblur="this.value=!this.value?'Keresés...':this.value;"
Ez teljes mértékben helytelen. Már eleve a
this.value=!this.value
.Feltételezem, nem valami tisztességes hook_form_alter()-ben vagy hasonlóban... :)
Miért akarsz ilyen id-t generálni? Miért bírálod felül a Drupal működését?
így nem lehet
drupalban nem bánhatsz így a formokkal, nem így működik a form api. különböző okokból, pl biztonság. nem babrálhatsz így meg űrlapelemeket és nem így kötsz js kódok az űrlapelemekhez. ez így soha nem fog működni, felecsdel.
-
clear: both;
csak kiegészítés áj száppóz
gondolom a kérdezőnek ment, csak kiegészítettél :)
amúgy ja, minden szó igaz :D
rule #35 - there is a module for it
http://drupal.org/project/jform_label
ezt most így hirtelen csak, aztán biztos van még 5-6 hasonló.
szerk: http://drupal.org/project/compact_forms ezt már használtam is talán..
-
clear: both;
Akkor azt szeretném kérdezni,
Akkor azt szeretném kérdezni, hogy hol találom a search modul html kódját, amibe bele tudnék nyúlni kézzel, mert állítani akarok pár paramétert (nem tetszik a helyzete és az elhelyezkedése) ?
Nyilván ez a megoldás marad, ha nem tudok hash-t kérni a kereső formtól, enélkül viszont nem fut, amit írtam.
Átírtam a kereső html kódját
Átírtam a kereső html kódját és egy külső search.php-ba vezettem át a feldolgozást. Érdekes, hogy így sem jó, pedig ha egy saját html-ből hívom a feldolgozót, tökéletesen működik!
Search.php tartalma:
100%, hogy jó és működik, csak a D7-ből nem akar valami miért.
Szerintem az a baj…
…hogy HTML és PHP-s fejjel gondolkozol, nem pedig Drupalosan. Ez így nem fog menni, a Drupal egy komplett rendszer, meg vannak a szabályok, ahogy eléred és módosíthatod a működését, de az semmiképpen sem az az út lesz, amit erőltetsz.
Drupal modulfejlesztés témakörében keress könyveket és példákat.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
Ez így nagyon nem jó
Ez nagyon nem jó ebben a formában, egy külső, saját PHP-s fájlt nem csaphatsz csak úgy hozzá a Drupalhoz, mert vagy iszonyatosan csúnya "megoldáshoz" fog vezetni, vagy egyszerűen nem működik. Mint az esetek többségében, most is az utóbbi eset áll fenn.
Így tudod felülbírálni a search formot:
modulból:
Mivel referencia szerint kapja meg ez a függvény a változókat, ezért az ezen a tömbön végzett változtatások érvényesek maradnak a függvényből való visszatérés után is.
theme-ből:
A JavaScriptes dolgok meg attól még csúnyák, és amúgy sem valószínű, hogy pl. az
onblur="this.value=!this.value? ......."
jó lenne (lásd =! a != helyett).Egy HTML5-ös dolog egyébként a placeholder attribútum használata:
http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_input_placeho...
mondjuk ennek használatához legyen HTML5-ös a sminked is.
mint már írtam én is meg többen,
ez így nem fog menni, találhatsz példákat meg van remek dokumentáció is róla, hogyan használunk javascriptet és jqueryt. http://drupal.org/node/751744
-
clear: both;