SELECT mező láthatósága / mérete

HoLa képe

Jó estét!

Érdeklődnék, hogy milyen módon lehetne egy Drupal FORM-ban egy SELECT mezőt láthatatlanná tenni, és a szélességét beállítani?

Ez a mezőm:

$form['mind'] = array(
  '#type' => 'select',
  '#title' => t('Összes adat'),
  '#required' => FALSE,
  '#default_value' => 0,
  '#options' => $r,
  '#size' => 5,
  '#disabled' => 'disabled',
  '#width' => '100',
  '#description' => t('Összes adat!'),
);

Tudok láthatatlan mezőt csinálni (HIDDEN), de az tudtommal csak egy TEXTFIELD (vagy lehet SELECT-nek is használni?), és csak a függőleges méretet (sorok száma) tudom befolyásolni (size), de a szélességet nem.
Rengeteg oldalt átnéztem, de nem találtam Drupalban használható megoldást, csak valami JavaScript-eset, de ha lehet anélkül az jobb lenne (bár legvégső esetben a JavaScript-es megoldásnak is örülnék :) ).

Köszönöm szépen a segítséget.

Lavjaman képe

select

valamint ha szeretnéd formázni azt a selectet, akkor miért nem használsz css-t? 8-)

0
0

*----*----*

$node ? 'alma' : 'bor'

*----*----*

pp képe

miért akarod egy láthatatlan elemnek a szélességét állítani???
Valamit úgy érzem titkolsz előlünk. :)

Egyébként '#access' => FALSE, és úgy eltűnik mint a sicc.

pp

0
0
HoLa képe

igazából két különböző problémához kellene a láthatatlanság és a szélesség, viszont úgy voltam vele, hogy ha a láthatóság nem kikapcsolható, akkor a szélességet állítom minimumra :)

kösz a tippet, kipróbálom ezt az access argumentumot
ha ezt false-ra állítom akkor ugyanúgy lehet használni mint a láthatót külső, mondjuk JS-es eléréssel?

0
0
szantog képe

Nem, ha #access FALSE, akkor azt senki nem bánthatja, szóval jó lenne tudni, hogy mire is kell neked a miújság, mert valszeg a megközelítés nem túl jó.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

HoLa képe

van egy SELECT mezőm, amiben kiírok néhány alap adatot jól olvashatóan, és itt lehet választani, és van egy másik mezőm, amiben az összes hozzá tartozó értéket eltárolom (;-vel elválasztva őket egymástól), nem csak az alap adatokat, és amikor az első mezőből kiválasztok egyet, akkor a 2.-ban is ki lesz választva ugyanaz az indexű elem (eddig kész vagyok), majd egy harmadik SELECT mezőben ki szeretném sorban íratni a második mező elemeit (a ;-knél felbontva), és ezért kellene, hogy a 2. mező ne látszódjon, emrt az csak egy segéd mező, amiben adatokat tárolok

Remélem nem bonyolítottam tűl a magyarázatot.
Viszont a fejlesztés közben egy újabb problémába ütköztem, vagyis az első SELECT mező megváltozásakor szeretném az összes műveletet végrehajtani, viszont a 2. SELECT mezőből a kiválasztott mező értékeit nem tudom elérni :(
A saját kiválasztott adatokat át tudom adni:
'#attributes' => array('onChange' => 'listing(this.options[this.selectedIndex].text)'),
Viszont egy másik mezőét, nem
'#attributes' => array('onChange' => 'listing(document.getElementById("edit-mind").options[document.getElementById("edit-mind").selectedIndex].text)'),
és a JS-ből nem tudok rá hivatkozni:
document.getElementById('edit-adatok').options[1] = id;
és a 2. SELECT elem-hez rendelt onChange() egyszerűen nem fut le (talán mer JS-en keresztül változtatom az értékét, és az nem számít "Change"-nek?)
mit lehet ilyenkor csinálni?
Tanulmányoztam több oldalt is, sőt olyat is ahol hasonló dolgokat csinál a rendszer:
http://www.micsoft.hu/_adatbazis/index.php - itt az első példát felhasználhatom majd a 3. SELECT elem feltöltésére, de amíg nem tudom elkérni az adatokat, addig nem tudok tovább haladni :(

Lehet ez egy kicsit más téma, bár szerintem az alapkérdésemhez hozzátartozik :).
Előre is köszönök minden segítséget

0
0
HoLa képe

sikerült kikérnem a másik mező értékét:

var txt = document.getElementById("edit-mind").options[document.getElementById("edit-mind").selectedIndex].text;

nem értem eddig miért nem ment, pedig ugyanezt csináltam :)
Viszont a láthatósággal még gondjaim vannak, mivel az #access attribútum tényleg nem jó...
És még a SELECT mezők kezelésével próbálkozok...

0
0