Javascript 切换表单中标签的语言
我在烧瓶应用程序中编写了一系列wtforms。我应用程序中的一个页面将被说英语和西班牙语的人使用。我想找到一个干净的方法,通过网页上的切换按钮在英语和西班牙语之间切换表单元素标签 我在这里找到了一个很好的解决方案,可以使用HTMLJavascript 切换表单中标签的语言,javascript,python,html,flask,flask-wtforms,Javascript,Python,Html,Flask,Flask Wtforms,我在烧瓶应用程序中编写了一系列wtforms。我应用程序中的一个页面将被说英语和西班牙语的人使用。我想找到一个干净的方法,通过网页上的切换按钮在英语和西班牙语之间切换表单元素标签 我在这里找到了一个很好的解决方案,可以使用HTMLlang属性切换语言(第二个答案由J Grover提供): 这将每种语言封装在元素中,然后简单地隐藏我们不想看到的语言 我的问题是表单上字段的标签来自wtforms对象。我不确定如何在当前设置中包括多种语言。下面是我现在的位置示例: 表格 class RoofChec
lang
属性切换语言(第二个答案由J Grover提供):
这将每种语言封装在
元素中,然后简单地隐藏我们不想看到的语言
我的问题是表单上字段的标签来自wtforms对象。我不确定如何在当前设置中包括多种语言。下面是我现在的位置示例:
表格
class RoofCheck(FlaskForm):
"""
Class holding the form inputs for a roof check
"""
roofstate = RadioField('Roof Status',
validators=[validators.DataRequired('Please select roof closed or open')],
choices=[('closed', 'Closed'), ('open', 'Open')])
comments = TextAreaField('Comments on roof status',
[validators.optional(), validators.length(max=390)],
render_kw={"placeholder": "Enter comments here",
"rows": 4,
"style": "min-width: 100%"})
submit = SubmitField('Submit')
HTML
<div id='roof_check' class='col-md-6 padding-0'>
<form id="roof_check_form" action={{ url_for('roof_check')}} method="post" name="roof">
<fieldset class='form_group'>
{{ form1.hidden_tag() }}
<legend class='text-center'>
Daily visual check of the roof
</legend>
{% for subfield in form1.roofstate %}
<div class='form-check'>
{{ subfield }}
{{ subfield.label(class_="form-check-label") }} <br/>
</div>
{% endfor %}
<div class='form-check'>
{{ form1.comments }}
</div>
<div class='form-check'>
{% with messages = get_flashed_messages(category_filter=["form1"]) %}
{% if messages %}
{% for message in messages %}
<div> {{ message }} </div>
{% endfor %}
{% endif %}
{% endwith %}
{% for message in form1.roofstate.errors %}
<div> {{ message }} </div>
{% endfor %}
<div style="padding-top: 5px;">
{{ form1.submit(class_="btn btn-primary") }}
</div>
</div>
</fieldset>
</form>
</div>
{{form1.hidden_tag()}}
每天对屋顶进行目视检查
{form1.STATE%中的子字段为%1}
{{子字段}}
{{subfield.label(class=“form check label”)}
{%endfor%}
{{form1.comments}}
{%with messages=get_flashed_messages(category_filter=[“form1]”)%}
{%if消息%}
{消息%中的消息为%s}
{{message}}
{%endfor%}
{%endif%}
{%endwith%}
{form1.ROOTSTATE.errors%中的消息为%1}
roof_status_text = ("<span lang='en'>Roof Status</span>"
"<span lang='es'>Estado del Techo</span>")
open_text = ("<span lang='en'>Open</span>"
"<span lang='es'>Abierto</span>")
closed_text = ("<span lang='en'>Closed</span>"
"<span lang='es'>Cerrado</span>")
roofstate = RadioField(roof_status_text,
validators=[validators.DataRequired('Please select roof closed or open')],
choices=[('closed', closed_text),
('open', open_text)])