使用Laravel,在以下场景中,如何将书籍ID添加到会话中?
@foreach( $books as $book )
<li>
{{ $book->name }}
<a href="#" onClick='addBookToList( "<?= $book->id ?>" )'>Add Book To List</a>
</li>
@endforeach
这是我的尝试。我知道它不应该以这种方式工作,但我该如何改变呢?
<script>
function addBookToList( bookId )
{
<? Session::put( 'bookId', bookId ); ?>
}
</script>
答案 0 :(得分:2)
//routes.php
Route::post('/ajax/add-book', function(){
Session::put( 'bookId', Input::get('bookId') );
});
你的html / js实现很好。这是实现同样目标的另一种方式:
<a href="javascript:void(0)" data-book="<?= $book->id ?>">Add Book To List</a>
在你的js文件中
$('a[data-book]').click(function($e){
$e.preventDefault();
$.post("/ajax/add-book", {
"bookId": $(this).data('book')
});
});
答案 1 :(得分:0)
从未使用过Laravel,但我相信这些内容可能有用:
var addBookToList = function(bookId){
$.post("session.php", {
"bookId": bookId
});
};
<a href="#" onClick='addBookToList( "<?= $book->id ?>" )'>Add Book To List</a>
<?php Session::put( 'bookId', Input::get('bookId') ); ?>