我的观点是:
@foreach ($social_networks as $social_network)
{{ $social_network->displayName}}
@endforeach我的控制器:
$social_networks = DB::table('social_networks')->get();
if(Auth::user()->admin)
{
return view('adminDashboard')
->with('social_networks', $social_networks)
->with('i', ($request->input('page', 1) - 1) * 9);
}
return view('dashboard')
->with('social_networks', $social_networks)
->with('i', ($request->input('page', 1) - 1) * 9);我的路线:
Route::resource('dashboard','DashboardController');基本上,我需要的是,尝试并添加一个网址链接到每个按钮的产生。并且每个按钮链接将是不同的。
我需要为每个按钮添加一个属性。我们称它为data-url。我在其中放入了网络的URL,并且需要附加一个处理程序,该处理程序在单击按钮时触发,以便跟踪URL。
我想写一些附加到社交按钮的JavaScript。如下所示:
$(document).ready(function() {
$('.social-network').on('click', '.provider-btn', function( e ) {
$.ajax({
'url': 'addconnection',
'data': {
network: this.data('network')
},
'dataType': 'json'
}).done(function(json) {
if (json.status='ok') {
window.location = json.url;
}
});
});
});然后在服务器端,我需要一段代码来执行,并确保响应如下所示:
function handleAddConnection($network) {
$social_network = DB::table('social_networks')->where('name', $network)->first();
$url = $social_network->apiUrl;
$response = array('status' => 'ok', 'url' => $url);
}发布于 2017-05-22 14:58:28
同样的循环,假设您有一个主索引:
@foreach($social_networks as $social_network)
<a href="{{ route('social_network.show', $social_network->id) }}" class="social-network-ajax"> {{ $social_network->displayName }} </a>
@endforeach然后,您可以定义一个click处理程序,它将向服务器发送一个ajax请求:
$('body').on('click', '.social-network-ajax', function(e){
e.preventDefault(); //stop the default link from opening
var $this = $(this); //referencing
$.ajax({
method: 'GET',
url: $this.prop('href')
}).done(function(resp){
console.log(resp);
});
});当然,相应地定义您的路线:
Route::get('social-network/{social_network}', 'SocialNetworkController@show')->name('social_network.show');或者您希望将其发送到的任何控制器方法。
https://stackoverflow.com/questions/44106275
复制相似问题