Php 如何在使用Laravel 5.5的jQuery中使用@lang?
我试图创建一个动态输入字段,当某个值与数据库中存储的值不再匹配时,该字段会发出警告。我想使用Laravel的本地化Php 如何在使用Laravel 5.5的jQuery中使用@lang?,php,jquery,laravel,Php,Jquery,Laravel,我试图创建一个动态输入字段,当某个值与数据库中存储的值不再匹配时,该字段会发出警告。我想使用Laravel的本地化@lang('messages.error')或{{{{uuuu('messages.error')}}使此消息可用于我的应用程序的所选语言 我的问题很简单,如何在jQuery中使用它?我发现答案对我目前的经验水平来说很难,所以我想知道这里是否有人知道答案 部分代码: <meta charset="UTF-8"> <meta name="viewport" cont
@lang('messages.error')
或{{{{uuuu('messages.error')}}
使此消息可用于我的应用程序的所选语言
我的问题很简单,如何在jQuery中使用它?我发现答案对我目前的经验水平来说很难,所以我想知道这里是否有人知道答案
部分代码:
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<title></title>
@lang('form.kvk')
@lang('form.kvk')*
{{--如果没有错误,则保持为空--}
/*在回答后添加
var kvk='{{{(add/customer/messages.noMatchKvk”)}}';
*/
$('#kvk').keyup().on('change',function()){
//如果该值不再等于DB
if($('#kvk').val()!='{{{$debtor->kvk}}}')){
$('noMatchKvk').html(''+kvk+'');
}
//如果值保持不变
if($('#kvk').val()='{{{$debtor->kvk}}}')){
$('#noMatchKvk').html('');
}
});
PS.我到处找了找,但找不到答案。但是,我可能问错了问题。
先谢谢你!:)
编辑+解决方案
我没有提到邮件在en目录下的另一个文件夹中。它失败的原因是因为我一直用点(.)提到路线,而我本应该用斜线(/)的。我已经编辑了我的问题
我猜这是新手犯的错误,谢谢大家的回复!
谢谢@Theodoros Alexopoulos的回答
<script type="text/javascript">
var something = @json( __('file.variable') );
</script>
var something=@json('file.variable');
脚本应该在刀片内部
然后随意使用变量我认为必须在JS单引号内保留
@lang
或{{}
调用:
$('#noMatchKvk').html('<span class="help-block"><strong>{{ __("messages.noMatchKvk") }}</strong></span>');
第二种方法使它更具可读性。另外,请确保该
位于.blade.php
文件中(看起来是这样,但只是需要注意;不能在直接的.js
文件中使用类似@
或{}
的刀片指令)使用此内部脚本标记而不是.js文件,然后可以在脚本标记或.js文件中输入变量
<script>
var v1 = '{{ @lang('file.value') }}';
$('#kvk').keyup().on('change', function() {
// If the value is no longer equal to the DB
if ( $('#kvk').val() != '{{ $debtor->kvk }}' ) {
$('#noMatchKvk').html('<span class="help-block"><strong>' + v1 + '</strong></span>');
}
// If the value remains the same
if ( $('#kvk').val() == '{{ $debtor->kvk }}' ) {
$('#noMatchKvk').html('');
}
});
var v1='{{@lang('file.value')}}';
$('#kvk').keyup().on('change',function()){
//如果该值不再等于DB
if($('#kvk').val()!='{{{$debtor->kvk}}}')){
$('noMatchKvk').html(''+v1+'');
}
//如果值保持不变
if($('#kvk').val()='{{{$debtor->kvk}}}')){
$('#noMatchKvk').html('');
}
});
在laravel 8中,您可以使用@lang,而不需要这样的括号
<script type="text/javascript">
var message = "@lang('file.variable')";
</script>
var message=“@lang('file.variable')”;
您在搜索时是否碰巧看到此页面?执行var something=@json(_u('file.variable'))可能更安全代码>。一个含有“
的翻译字符串将破坏上面的代码。这实际上是正确的,我没想到,谢谢你指出
<script>
var v1 = '{{ @lang('file.value') }}';
$('#kvk').keyup().on('change', function() {
// If the value is no longer equal to the DB
if ( $('#kvk').val() != '{{ $debtor->kvk }}' ) {
$('#noMatchKvk').html('<span class="help-block"><strong>' + v1 + '</strong></span>');
}
// If the value remains the same
if ( $('#kvk').val() == '{{ $debtor->kvk }}' ) {
$('#noMatchKvk').html('');
}
});
<script type="text/javascript">
var message = "@lang('file.variable')";
</script>