javascript - 动态更改验证码语言

标签 javascript recaptcha

我在这里遇到 displayLang 变量范围的问题。我想在函数内部使用值,但它一直在使用全局值。任何帮助将不胜感激。谢谢。

我正在从另一个脚本调用此函数,例如 changeCaptchaLang('FR')。

<script type="text/javascript">
var displayLang = 'en';

function changeCaptchaLang(lang) {
    displayLang = lang.toLowerCase();
}

var RecaptchaOptions = {
    theme : 'clean',
    lang : displayLang,
 }

最佳答案

文件 1:

<script type="text/javascript">
var lang = 'FR';

lang = changeCaptchaLang(lang);
alert(lang + " " + RecaptchaOptions['lang']); // result: "fr fr"
</script>

文件 2:

var displayLang = 'EN';

var RecaptchaOptions = {
    theme : 'clean',
    lang : displayLang,
}

function changeCaptchaLang(lang)
{
    displayLang = lang.toLowerCase();
    RecaptchaOptions['lang'] = displayLang;
    return displayLang;
}

如果我没记错的话,该函数中的 displayLang 仅在函数内具有新值,但在函数外它仍然是相同的旧值。

让我知道进展如何!

关于javascript - 动态更改验证码语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36951336/

相关文章:

javascript - js滚动条不可见

javascript - 如何从js对象向twig模板添加变量

javascript - 联系表单 mailer.php 返回空白页面

unit-testing - Grails-使用reCaptcha插件对 Controller 的方法进行单元测试

javascript - 检查用户是否登录 Passport.js

javascript - 如何验证 Joi 中的引用总和

javascript - 为什么 reCaptcha 窃取关注页面加载

java - recaptcha 通过 http 而不是 https 进行调用

javascript - Angular 中的同一 View 多个 Controller

javascript - reCAPTCHA 和 JS 表单验证