Contact Form 7 - select box cu valoare diferită față de textul afișat în opțiune

21 iun. 2012, 15:15:19
Vizualizări: 113K
Voturi: 18

Știe cineva cum pot seta o valoare diferită în opțiunile select din plugin-ul Contact Form 7? Iată un exemplu al codului HTML pe care aș dori să îl genereze:

<select>
    <option value="1">Mașina mea</option>
    <option value="2">Mașina ta</option>
</select>
1
Comentarii

Dacă nu există o soluție nativă, poți rezolva aceasta cu jQuery val(), show() și hide().

brasofilo brasofilo
21 iun. 2012 16:15:32
Toate răspunsurile la întrebare 2
6
28

Se pare că această funcționalitate este acceptată nativ de Contact Form 7, doar că nu este foarte evident cum să o implementezi.

Iată o pagină de documentație care explică funcționalitatea: http://contactform7.com/selectable-recipient-with-pipes/

Practic, tot ce trebuie să faci este să introduci valorile astfel:

"Valoare vizibilă|valoare-reală-a-formularului"

Ceea ce este înainte de caracterul pipe | va fi afișat în formular, iar ceea ce urmează după va fi valoarea reală completată în formular.

Sper că te ajută!

30 oct. 2012 21:16:39
Comentarii

Acest lucru nu funcționează. Documentația este incorectă.

Solomon Closson Solomon Closson
16 sept. 2015 21:25:13

@SolomonClosson De fapt, acest lucru încă funcționează; este doar ciudat. Codul HTML al formularului nu afișează valoarea 'raw', dar așa cum menționează link-ul la final, poți accesa aceste valori folosind prefixul _raw_, de exemplu _raw_CAMPDUMNEAVOASTRA în loc de CAMPDUMNEAVOASTRA.

drzaus drzaus
4 dec. 2015 04:57:53

Aceasta va funcționa doar pe partea de server. Conform documentației, acest lucru este pentru a preveni trimiterea valorilor către clientul browserului, așa că dacă doriți să accesați valoarea opțiunii cu JavaScript (val() din jQuery) în loc de textul opțiunii (text() din jQuery), atunci folosiți soluția lui Demilio.

Herbert Van-Vliet Herbert Van-Vliet
23 dec. 2017 21:49:49

cum să fac asta dacă folosesc atributul "data" pentru a popula selectul?

Zorox Zorox
13 ian. 2019 07:57:19

Pentru o implementare exemplu, aruncați o privire aici.

nmr nmr
20 feb. 2023 15:53:17

Aceasta funcționează, dar nu în modul în care se aștepta posterul original. Posterul original așteaptă o soluție în care elementul <select> din browser să conțină atât textul vizibil cât și valoarea ascunsă, iar când formularul este trimis, valoarea ascunsă să fie trimisă către server. Modul în care CF7 funcționează de fapt când folosești caracterul pipe este că construiește doar valoarea vizibilă în elementul <select>, dar când textul vizibil este trimis cu formularul, CF7 apoi înlocuiește acel text cu valoarea ascunsă înainte de a genera e-mailul sau de a salva intrarea.

Brett Donald Brett Donald
13 apr. 2023 00:47:56
Arată celelalte 1 comentarii
1

Am rezolvat acest lucru prin publicarea formularului standard Contact Form 7 mai întâi, apoi am copiat codul sursă generat din toate shortcode-urile de la Contact Form 7. Apoi, în loc să folosesc shortcode-ul ca tag select, am folosit un tag select real cu <option> în interior. În acest fel, am putut folosi motorul Contact Form 7 și în același timp să setez propriile mele valori-text în tag-urile option...

21 iun. 2012 20:59:32
Comentarii

Acest lucru nu vă va împiedica să folosiți valorile în e-mail? Dacă creați o casetă de bifat în HTML cu name="mybox", nu cred că plasarea [mybox] în e-mail va funcționa, nu-i așa?

Jules Jules
22 ian. 2021 10:18:52