Vykreslení popisku jiným HTML tagem než label

cafesk8
Člen | 103
+
0
-

Zdravím,

mám radiolist v proměnné {input typ_sluzby} a tento prvek potřebuji vykreslit následovně:

<div class="col-sm-4">
	<div class="form-check p-0">
		<label class="form-check-label w-100" for="exampleRadios1">
			<span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
			<p class="font-m text-uppercase">Služba: <span class="d-block pink-heavy">NAZEV_SLUZBY</span></p>
		</label>
		<input class="form-check-input m-0" type="radio" name="exampleRadios" id="exampleRadios1" value="option1" checked="">
	</div>
</div>
<div class="col-sm-4">
	<div class="form-check p-0">
		<label class="form-check-label w-100" for="exampleRadios1">
			<span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
			<p class="font-m text-uppercase">Služba: <span class="d-block pink-heavy">NAZEV_SLUZBY_2</span></p>
		</label>
		<input class="form-check-input m-0" type="radio" name="exampleRadios" id="exampleRadios2" value="option2" checked="">
	</div>
</div>

Dostal jsem se k tomuto řešení:

{foreach $form['typ_sluzby']->items as $key => $label}
	<div class="col-sm-4">
		<div class="form-check p-0">
			<label class="form-check-label w-100" for="exampleRadios1">
				<span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
				<p class="font-m text-uppercase">Služba: <span class="d-block pink-heavy">{label typ_sluzby:$key}{/label}</span></p>
			</label>
			{input typ_sluzby:$key, class=>'form-check-input m-0'}
		</div>
	</div>
{/foreach}

Což by bylo v pořádku, ale problém je v tom, že já bych potřeboval aby {label typ_sluzby:$key}{/label} vypisoval pouze text možnosti a ne aby generoval celý HTML <label/> tag jak to dělá doposud:

<label class="form-check-label w-100" for="exampleRadios1">
	<span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
	<p class="font-m text-uppercase">
		Služba: <span class="d-block pink-heavy">
			<label for="frm-wizard-step1-typ_sluzby-ins_value">NAZEV_SLUZBY</label>
		</span>
	</p>
</label>

Nevíte prosím někdo jak na to?

Díky

David Matějka
Moderator | 6445
+
+1
-
  • nemusis tam vubec davat {label}, staci, kdyz tam vypises {$label}
  • pripadne muzes na radio listu zavolat getItemLabelPrototype a ten html tag si upravit (treba nastavit name na null)
  • nebo muzes to html sestavit rovnou v php a jako label nastavit instanci Nette\Utils\Html objektu
  • a posledni moznost, kterou bych asi zvolil je, ze budes ten tvuj label, co tam zapisujes jako html, psat pres makro, takze:
{label typ_sluzby:$key, class=>"form-check-label w-100"}
    <span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
    <p class="font-m text-uppercase">Služba: <span class="d-block pink-heavy">{$caption}</span></p>
{/label}
cafesk8
Člen | 103
+
0
-

Děkuji,

použil jsem poslední možnost a funguje to perfektně.

David Matějka napsal(a):

  • nemusis tam vubec davat {label}, staci, kdyz tam vypises {$label}
  • pripadne muzes na radio listu zavolat getItemLabelPrototype a ten html tag si upravit (treba nastavit name na null)
  • nebo muzes to html sestavit rovnou v php a jako label nastavit instanci Nette\Utils\Html objektu
  • a posledni moznost, kterou bych asi zvolil je, ze budes ten tvuj label, co tam zapisujes jako html, psat pres makro, takze:
{label typ_sluzby:$key, class=>"form-check-label w-100"}
    <span class="lnr lnr-laptop-phone d-block icon-s pink mb-3"></span>
    <p class="font-m text-uppercase">Služba: <span class="d-block pink-heavy">{$caption}</span></p>
{/label}