laravel how to route to a route on a javascript?
Solution 1
yes this is possible and has nothing to do with Laravel. There are different possibilities. If your query is embedded within the same laravel view, you put the URL directly in your jQuery code, for example like this:
$(".waitingTime .button").click(function () {
window.location.href = "{{URL::to('restaurants/20')}}"
});
But I think the best option is to add the URL on your button tag as a data attribute and then let jquery go to that URL. That way you can make your buttons more dynamic and have more capsulated code.
One example might be:
<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');
});
That way you can always give a button with the class link-button
a data-href
attribute with the URL you want to open when the button is clicked and don't have to add additional jquery.
Solution 2
Just output php in your javascript
$(".waitingTime .button").click(function () {
window.location.href = "<?php echo URL::to('restaurants/20'); ?>";
});
Comments
-
Anastasie Laurent over 3 years
I have this jquery
$(".waitingTime .button").click(function () { alert("Ema"); });
I have a
a
tag like this:<a href="{{ URL::to('restaurants/20') }}"></a>
Can I do the same
href
action in the jquery function?Many Thanks
-
Ivanka Todorova about 7 yearsYou should use laravel's synthax:
{{}}
. It applies some cool stuff. -
w3spi almost 5 yearsPersonally, I'm not a fan of this answer, php in javascript, it's rather average