javascript - 使用基于 HTML 语言的 jQuery 选择选项
问题描述
我有一个带有订单的多语言页面,我尝试添加一些功能以<select>
根据语言从列表中自动选择国家。
这是我的 HTML 代码:
<select name="billing_country" id="billing_country" class="country_to_state country_select select2-hidden-accessible" autocomplete="country" tabindex="-1" aria-hidden="true">
<option value="">Land/Region auswählen …</option>
<option value="CZ" selected="selected">Tschechien</option>
<option value="FR">Frankreich</option>
<option value="ES">Spanien</option>
<option value="DE">Deutschland</option>
<option value="IT">Italien</option>
</select>
以及 HTML 属性里面的页面语言。在这种情况下,我想选择选项value="DE"
::
<html lang="de-DE" class="js svg background-fixed">
这是我可以使用的唯一一种语言变量。
我需要<option>
基于 HTMLlang
属性来定位值。
我认为它可以用 jQuery 来完成。怎么做?
解决方案
- 加载站点后,获取站点语言的值。
- 获取所有选项并对其进行迭代。
- 检查您的站点值是否包含在列表的值中,如果是,然后将此选项的选择属性设置为 true。
window.onload = myfunction;
function myfunction() {
let initialLang = $("html")[0].lang;
var myOpts = $('option');
for(let i = 0; i < myOpts.length; i++){
if(initialLang.includes(myOpts[i].value)){
myOpts[i].selected = true;
}
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<html lang="de-DE" class="js svg background-fixed">
<select name="billing_country" id="billing_country" class="country_to_state country_select select2-hidden-accessible" autocomplete="country" tabindex="-1" aria-hidden="true">
<option value="">Land/Region auswählen …</option>
<option value="CZ" selected="selected">Tschechien</option>
<option value="FR">Frankreich</option>
<option value="ES">Spanien</option>
<option value="DE">Deutschland</option>
<option value="IT">Italien</option>
</select>
推荐阅读
- angular - 在 Angular 中加载一个组件作为子组件
- javascript - 删除每个文件 angular 6 的文件扩展名
- javascript - 为什么 String.prototype.substr() 似乎已被弃用?
- php - 如何在mysql中使用删除按钮删除while循环的特定行
- angular - 为什么在 Okta 中,SPA(使用 Angular 和 WebAPI 2.0 构建)不首选 SAML?
- delphi - 在 Delphi 中提取引号之间的文本
- python - TypeError:只能将str(不是“int”)连接到str
- javascript - 使用ajax提交表单时如何在while循环中摆脱相同的id
- angularjs - 从时区偏移或Angularjs中的日期获取时区
- java - 阅读在给定时间后收到的短信