我创建了一个简报弹出功能,允许用户注册发送的简报,如果用户尝试点击提交而不先输入电子邮件地址,则会有一条提示消息,但是我需要根据他们所在的国家/地区更改此消息/提醒,例如,如果他们在意大利网站上,我将需要此消息为意大利语,我当前的代码是:
this.signup = function() {
if ($('#emailsignup').val() == '') {
alert('Bitte geben Sie eine gültige E-Mail Adresse ein.');
} else {
$.ajax({
dataType: 'jsonp',
data: {
e: $('#emailsignup').val(),
s: 'leftsideform',
c: that.lang
},
jsonp: 'jsonp_callback',
url: 'http://karina.com/######',
success: function (response) {
if (response.success === true) {
$('#emailsignup').val('');
}
if (response.callback.data != '') {
alert(response.callback.data);
}
}
});
}
}
答案 0 :(得分:2)
在前端:
对我来说,简单的方法是让你的背面生成一个javascript(例如PHP),以便有类似的东西:
<script>
translation.error = "BLA BLA BLA";
</script>
该脚本将以您想要的语言打印变量。然后在你的代码中你只需要这样称呼它:
alert(window.translation.error);
在警报中显示错误。
使用当前代码,您将语言变量传递给服务器,并且如果出现问题,您希望返回错误消息。在PHP中,您可以使用不同的翻译文件,例如:
/langs/en.php
/langs/it.php
/langs/...
具有如下结构:
<?php
$trans = array("Error" => "Error message");
根据语言,您可以包含其中一个文件并返回翻译文本,如:$ trans ['error']。
答案 1 :(得分:0)
<?php
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
$langs_messages = array(
'ru' => 'Ru alert',
'en' => 'En alert',
// others langs
);
$lang_alert = $langs_message[$lang];
?>
Javascript
//.....
if ($('#emailsignup').val() == '') {
alert('<?php echo $lang_alert; ?>');
//.....