Php Ajax没有';我没有回应,或者看起来像那样
我正在尝试使用ajax作为动态注释部分,一切似乎都是正确的,但是当涉及到功能时,有些地方出了问题,因为我没有收到任何警报消息,当我单击它时,它根本没有给我任何要考虑的东西,就是这样,什么都没有发生,这是代码 路线-Php Ajax没有';我没有回应,或者看起来像那样,php,jquery,ajax,laravel,Php,Jquery,Ajax,Laravel,我正在尝试使用ajax作为动态注释部分,一切似乎都是正确的,但是当涉及到功能时,有些地方出了问题,因为我没有收到任何警报消息,当我单击它时,它根本没有给我任何要考虑的东西,就是这样,什么都没有发生,这是代码 路线- Route::resource('/comments', 'CommentsController'); 阿贾克斯- $(document).ready(function(){ $('#submitComment').click(function(e){ e.
Route::resource('/comments', 'CommentsController');
阿贾克斯-
$(document).ready(function(){
$('#submitComment').click(function(e){
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
}
});
$.ajax({
url: "{{ url('/comments') }}",
method: 'POST',
data: {
body: $('#commentBody').val(),
post_id: $('#post_id').val()
},
success: function(result){
$('.alert').show();
$('.alert').html(result.success);
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
});
});
创建.blade-
<h1>Create comment</h1>
{!! Form::open(['id' => 'myForm']) !!}
<div class="form-group">
{{ Form::textarea('body', '', ['class' => 'form-control','id' => 'commentBody', 'placeholder' => 'Share your thoughts related to this post']) }}
</div>
{{ Form::hidden('post_id', $post->id) }}
{{Form::submit('Submit', ['class' => 'btn btn-primary'])}}
{!! Form::close() !!}
我看不到您在哪里创建要在
$(“#submitComment”)中查找的idsubmitComment
可以改为使用表单提交事件
改变
$('#submitComment').click(function(e){
到
这是一个简单的示例,希望对您有用:
我的Ajax
:
<script>
var urlVisit="{{route('comments.store')}}"
var token = "{{csrf_token()}}"
$.ajax({
method: 'POST',
url: urlVisit,
data: {
place_id: 1,
_token: token
},
success: function (response) {
alert('ok')
},
error: function (xhr, ajaxOptions, thrownError) {
if (xhr.status == 419)
{
alert(xhr.responseText) // text of error
// do something
}
else if(xhr.status == 401)
{
// do something
}
else
{
alert('No')
}
}
});
</script>
仍然没有响应请在控制台日志或内部发出警报,以确保事件首先发生。您是否在页面中重复ID?就像在循环中一样?@Nikola同样,您的控制器会返回重定向和会话消息,当我运行network status 200时,两者都不会像使用Ajax那样工作。键入xhr name Comments输入id#submitComment
。
$('#myForm').submit(function(e){
<script>
var urlVisit="{{route('comments.store')}}"
var token = "{{csrf_token()}}"
$.ajax({
method: 'POST',
url: urlVisit,
data: {
place_id: 1,
_token: token
},
success: function (response) {
alert('ok')
},
error: function (xhr, ajaxOptions, thrownError) {
if (xhr.status == 419)
{
alert(xhr.responseText) // text of error
// do something
}
else if(xhr.status == 401)
{
// do something
}
else
{
alert('No')
}
}
});
</script>
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class CommentsController extends Controller
{
public function store()
{
// DO something (validate or save to database,...)
return response()->json(['success'=>'Comment Created'],200);
}
}