在 Laravel 4 中单击按钮后如何在 jquery 中调用控制器函数
Posted
技术标签:
【中文标题】在 Laravel 4 中单击按钮后如何在 jquery 中调用控制器函数【英文标题】:How to call a controller function in jquery after a button click in Laravel 4 【发布时间】:2013-07-15 11:19:47 【问题描述】:单击按钮后,我想从控制器调用一个函数以将一些数据存储在数据库中。即,在 javascript (jquery) 中,我有:
$( '.opener' ).click(function()
FB.ui(
method: 'feed',
// redirect_uri: '/index.php',
link: 'http://test.com',
name: 'Bleh',
caption: 'Blah',
description: 'Testing!'
// $artist->stage_name
);
// Want to call controller function here:
Artists:function
);
在这种情况下如何从控制器调用函数?在上述情况下,控制器将是 ArtistsController,而函数是“function”。谢谢你。
【问题讨论】:
【参考方案1】:您只需像普通 URL 一样链接到它 - 像这样:
$( '.opener' ).click(function()
FB.ui(
method: 'feed',
link: 'http://test.com/artists/function', // put the link here
name: 'Bleh',
caption: 'Blah',
description: 'Testing!'
);
);
在你的 routes.php 中
Route::get('/artists/function', array('uses' => 'ArtistsController@function'));
【讨论】:
那会在艺术家控制器中调用函数“function”吗?【参考方案2】:改变你的路线到
Route::get('artists/function', array('as' => 'artists/function', 'uses' => 'ArtistsController@function'));
【讨论】:
【参考方案3】:您可以使用一个函数,例如声明为Controller
的 DB 类,但您可以不使用路由直接执行此操作:
<html>
<body>
<h1>home.blade.php</h1>
<?php
function test()
$users = DB::table('users')->join('users_views', 'users.id', '=', 'users_views.id')->where('users_views.id',Auth::user()->id)->get(); foreach ($users as $permiso) $ck2 = $permiso->perm;
test();
echo ";)";
?>
</body>
</html>
【讨论】:
home.blade.php
join( 'users_views', 'users.id', '=', 'users_views.id')->where('users_views.id',Auth::user()->id)->get(); foreach ($users as $permiso) $ck2 = $permiso->perm; 测试();回声“;)”; ?>【参考方案4】:<?php
function get_fotos_productos($id_prod)
//here call DB Class
foreach ($fotos as $foto)
$foto='<img src="img/productos/big/'.$foto->foto.'" >';
echo $foto;
?>
例如在我看来
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> <span class="glyphicon glyphicon-shopping-cart"></span> 7 - Items<span class="caret"></span>
</a>
<ul class="dropdown-menu dropdown-cart" role="menu">
<?php
$id_prod=3;
foreach ($cart as $key => $value)
echo '
<li>
<span class="item">
<span class="item-left">
'. get_fotos_productos($id_prod).'
<span class="item-info">
<span>Codigo :'.$value["code"].'</span>
<span>Cantidad : '.$value["qty"].'</span>
</span>
</span>
<span class="item-right">
<button class="btn btn-xs btn-danger pull-right">x</button>
</span>
</span>
</li>
';
?>
<li class="divider">
<li><?php echo "Costo Total:".$total; ?></li>
<li><a class="text-center" href="">View Cart</a></li>
</ul>
<!-- end snippet -->
【讨论】:
$fotos = DB:: table('productos')->where('id','=',$id_prod)->get();以上是关于在 Laravel 4 中单击按钮后如何在 jquery 中调用控制器函数的主要内容,如果未能解决你的问题,请参考以下文章
单击laravel vuejs中的按钮后如何隐藏bootstrap-vue模式
在 Laravel 中单击模态后如何获取标签的 data-href 值