#php #laravel #laravel-4 #blade
#php #laravel #laravel-4 #laravel-blade
Вопрос:
У меня есть этот jquery
$(".waitingTime .button").click(function () {
alert("Ema");
});
У меня есть такой a
тег:
<a href="{{ URL::to('restaurants/20') }}"></a>
Могу ли я выполнить то же href
действие в функции jquery?
Большое спасибо
Комментарии:
1. Что вы имеете в виду под тем же действием href ?
2. @RahilWazir Я имею в виду, что когда я нажимаю на
a
тег, браузер переходит к URL-адресу href. Я хотел бы иметь ту же функцию в функции javascript. но здесь это laravel, может быть, это другое? Я не знаю
Ответ №1:
да, это возможно и не имеет ничего общего с Laravel. Существуют разные возможности. Если ваш запрос встроен в то же представление laravel, вы помещаете URL-адрес непосредственно в свой код jQuery, например, так:
$(".waitingTime .button").click(function () {
window.location.href = "{{URL::to('restaurants/20')}}"
});
Но я думаю, что лучший вариант — добавить URL-адрес в свой тег button в качестве атрибута данных, а затем позволить jquery перейти к этому URL. Таким образом, вы можете сделать свои кнопки более динамичными и иметь больше капсулированного кода.
Одним из примеров может быть:
<div class="waitingTime">
<button class="button link-button" data-href="{{URL::to('restaurants/20')}}">
Click me
</button>
</div>
$(".link-button").click(function () {
window.location.href = $(this).data('href');
});
Таким образом, вы всегда можете указать кнопку с атрибутом class link-button
a data-href
с URL-адресом, который вы хотите открыть при нажатии кнопки, и вам не нужно добавлять дополнительные jquery.
Ответ №2:
Просто выведите php в своем javascript
$(".waitingTime .button").click(function () {
window.location.href = "<?php echo URL::to('restaurants/20'); ?>";
});
Комментарии:
1. Вы должны использовать синтаксис laravel:
{{}}
. Он применяет некоторые интересные вещи.2. Лично я не поклонник этого ответа, php в javascript, он довольно средний
Ответ №3:
если нужна переменная из js, можно использовать это
if(data.cookies == 0){
location.replace("{{ route('delivery') }}?id=" id);
}