以此表格为例:
<form id="login_form" method="post" action="/rest/auth/auth">
<div id="login_email" class="row margin-top-50">
<div class="col-md-12" id="input_container">
<input id="login_email_input" class="input_edit input_edit_img_width" type="email" name="email" th:placeholder="#{label.common_email}"></input>
<img class="input_edit_img" src="/img/ic_login_user.png"></img>
</div>
</div>
<div id="login_password" class="row margin-top-15">
<div class="col-md-12" id="input_container">
<input id="login_password_input" class="input_edit input_edit_img_width" type="password" name="password" th:placeholder="#{label.common_password}"></input>
<img class="input_edit_img" src="/img/ic_login_pw.png"></img>
</div>
</div>
<div class="row margin-top-15">
<div class="col-md-12">
<div class="checkbox_square">
<input id="check_password_show" type="checkbox" value=""></input>
<label for="check_password_show"></label>
<span th:text="#{label.common_password_show}"></span>
</div>
</div>
</div>
<div class="row margin-top-15">
<div class="col-md-12">
<button id="login_submit" type="submit" class="btn btn-default btn-blue" th:text="#{label.login}"></button>
</div>
</div>
</form>
正如您所见,我可以使用th:placeholder="#{label.common_email}"
这样的本地化消息。
我现在想使用jQuery Validation,我真的需要以某种方式使用我messages.properties
中的本地化字符串,如下所示:
$("#login_form").validate({
rules: {
email: {
required: true,
email: true
},
password: {
required: true
/*minlength: 6,
maxlength: 20*/
}
},
messages: {
email: {
required: "#{label.input_missing_email}",
email: "#{label.input_missing_email_valid}"
},
password: {
required: "#{label.input_missing_password}",
minlength: "#{label.input_missing_password_valid}"
}
}
});
有什么方法可以从客户端javascript访问我的春季本地化消息?或者,如果我必须使用本地化字符串,我应该更好地使用不同的验证方法吗?
答案 0 :(得分:1)
您无需在javascript级别从messages.properties
检索语言环境字符串,
如果仅将区域设置字符串保留为HTML,则可以轻松完成此操作,
我将在这做什么:
HTML:
<span>
或<div>
(如果您愿意的话)
在该元素之后显示一些msg,一些验证类型)<span>
和<div>
JS:
<span>
或<div>
。答案 1 :(得分:1)
jQuery.i18n.properties 是一个轻量级的jQuery插件,用于从'.properties'文件提供javascript的国际化,就像在Java Resource Bundles中一样。它根据提供的语言和国家/地区代码加载和解析资源包(.properties)。More
假设
label.delete.success =Successfully Deleted
label.delete.failure=Error in success
是您的messages.properties
属性文件。
然后jQuery.i18n.prop(label.delete.success)
会从您的javascript文件中返回Successfully Deleted
。
希望这有帮助。