3 回答
TA贡献1111条经验 获得超0个赞
方法的别名。如果您使用 1.9.0 之前的 jQuery 版本,则应该使用 type。
<form id="form{{$dm->id}}">
{{ csrf_field() }}
<input id="message" placeholder="Send a message" style="border-radius: 0px;" type="username" class="form-control" name="message">
<script>
$('form{{$dm->id}}').ready(function (){
$('form{{$dm->id}}').on('submit', function( event ) {
event.preventDefault();
$.ajax({
type: 'POST', //Check your JQ version.
method: 'POST', //Check your JQ version.
contentType:"multipart/form-data; charset=utf-8",
//url: '{{ route("sendMessage", $dm->id) }}',
url: '{{ route("sendmessage", $dm->id) }}',
data: $('form{{$dm->id}}').serialize(),
success: function(response){
alert('suces')
},
error: function(response){
alert('failure')
}
});
});
});
</script>
</form>
TA贡献1793条经验 获得超6个赞
不确定它是否解决了您的问题,但您还必须将 csrf 令牌添加到标头中:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
(当然,如果令牌位于元标记中)
TA贡献1802条经验 获得超4个赞
在 $.ajax 调用中,您需要将方法设置为 post 而不是类型。
$.ajax({
method: 'post',
url: '{{ route("sendMessage", $dm->id) }}',
data: $('form{{$dm->id}}').serialize(),
success: function(response){
alert('suces')
},
error: function(response){
alert('failure')
}
});
顺便说一句,jquery 通常被认为正在被淘汰。您可能想了解 jquery 的一些替代方案,例如 vue.js 或 React。具体到ajax方面,Laravel内置了axios支持。
- 3 回答
- 0 关注
- 114 浏览
添加回答
举报