#jquery #ajax #laravel-5
#jquery #ajax #laravel-5
Вопрос:
Возврат представления из контроллера laravel в ajax-запрос и заполнение данных в элемент div, но не работает, если я вставляю любую другую строку, например .html(" ")
, или если я использую .text()
ее, работает, но .html("")
и .html(data)
не работает. Тип success:function(data)
также является строковым, и эти строковые данные представляют собой таблицу html с разбиением на страницы laravel по умолчанию.
Получение данных таблицы от контроллера при успешном обратном вызове ajax
<table class="table table-striped">
<thead>
<tr>
<td>Stock Name</td>
<!-- <td colspan="2">Action</td> -->
</tr>
</thead>
<tbody>
<tr>
<td>book</td>
<td><a href="http://localhost:8000/shares/1/edit" class="btn btn-primary">Edit</a></td>
<td>
<form action="http://localhost:8000/shares/1" method="post">
<input type="hidden" name="_token" value="lYeyrbyZpnFLqICDXgpXuqXPVEHX61gjJsWNDIIg">
<input type="hidden" name="_method" value="DELETE">
<button class="btn btn-danger" type="submit">Delete</button>
</form>
</td>
</tr>
</tbody>
</table>
<ul class="pagination" role="navigation">
<li class="page-item disabled" aria-disabled="true" aria-label="amp;laquo; Previous">
<span class="page-link" aria-hidden="true">amp;lsaquo;</span>
</li>
<li class="page-item active" aria-current="page"><span class="page-link">1</span></li>
<li class="page-item"><a class="page-link" href="http://localhost:8000/sharesShow?page=2">2</a></li>
<li class="page-item"><a class="page-link" href="http://localhost:8000/sharesShow?page=3">3</a></li>
<li class="page-item">
<a class="page-link" href="http://localhost:8000/sharesShow?page=2" rel="next" aria-label="Next amp;raquo;">amp;rsaquo;</a>
</li>
</ul>
Функция Ajax
$(document).ready(function(){
$('#searchBtn').click(function(e){
e.preventDefault();
var url = $("#searchForm").attr('action');
var data = $("#searchForm").serialize();
$.ajax({
url: url,
method: 'get',
data: {
"data": data,
"_token": "{{ csrf_token() }}"
},
dataType: "html",
success: function(result){
console.log(result);
$("#divElement").empty();
$("#divElement").html(result);
}
});
});
});
Оператор возврата контроллера
$data = Share::paginate(1);
return view('shares.showAjax')->with('data',$data);
Элемент Div
<div id="divElement">
</div>
Комментарии:
1. Вы видите, что удаляете все дочерние узлы с
$("#divElement").empty()
помощью . Является ли этот код точным?2. в этом div уже есть таблица, и я добавляю в нее новые данные после поиска
3. Я не вижу, где вы используете
html()
илиtext()
.4. Я только что обновил.
5. Что
console.log(result);
отображается?