Scala inputRadioButton-当选项属性包含HTML代码时
我想在我的表单模板中使用Scala inputRadioButton-当选项属性包含HTML代码时,scala,playframework,playframework-2.0,Scala,Playframework,Playframework 2.0,我想在我的表单模板中使用@inputRadioGroup帮助程序(已找到): @inputRadioGroup( contactForm("gender"),· options = options("M"->"Male","F"->"Female")) 嗯,一切都好。但是我想使用图标/图像而不是文本。类似的东西(使用twitter引导css): 生成以下HTML代码: <label for="gender_M"><i
@inputRadioGroup
帮助程序(已找到):
@inputRadioGroup(
contactForm("gender"),·
options = options("M"->"Male","F"->"Female"))
嗯,一切都好。但是我想使用图标/图像
而不是文本
。类似的东西(使用twitter引导css):
生成以下HTML代码:
<label for="gender_M"><i class="icon-user"></i></label>
i class=“图标用户”/i
浏览器中的渲染为:
<i class="icon-info-sign"></i>
没有显示图标,因为html转义。。。有人有主意吗
提前感谢。如果您需要将类应用于生成的标签标签,那么您就倒霉了。创建radioButtonGroup的代码本身就是一个scala模板——如下所示:
@input(field, args:_*) { (id, name, value, htmlArgs) =>
<span class="buttonset" id="@id">
@options.map { v =>
<input type="radio" id="@(id)_@v._1" name="@name" value="@v._1" @(if(value == Some(v._1)) "checked" else "") @toHtmlArgs(htmlArgs)>
<label for="@(id)_@v._1">@v._2</label>
}
</span>
}
或者,您可以手动创建HTML,或者根据。重写默认字段帮助程序,例如,在
视图.utils
包中创建inputRadioButton.scala.HTML
文件,其中包含以下内容(根据需要进行修改):
<label for="gender_M"><i class="icon-user"></i></label>
<i class="icon-info-sign"></i>
@input(field, args:_*) { (id, name, value, htmlArgs) =>
<span class="buttonset" id="@id">
@options.map { v =>
<input type="radio" id="@(id)_@v._1" name="@name" value="@v._1" @(if(value == Some(v._1)) "checked" else "") @toHtmlArgs(htmlArgs)>
<label for="@(id)_@v._1">@v._2</label>
}
</span>
}
span.buttonset#fieldId label:
@(field: play.api.data.Field, options: Seq[(String,String)], args: (Symbol,Any)*)(implicit handler: helper.FieldConstructor, lang: play.api.i18n.Lang)
@helper.input(field, args:_*) { (id, name, value, htmlArgs) =>
<span class="buttonset" id="@id">
@options.map { v =>
<input type="radio" id="@(id)_@v._1" name="@name" value="@v._1" @(if(value == Some(v._1)) "checked" else "") @toHtmlArgs(htmlArgs)>
<label for="@(id)_@v._1">@Html(v._2)</label>
}
</span>
}
@import helper._
@import views.utils.inputRadioButton