Laravel不知道我是否应该使用<;表格>;执行ajax put请求时是否标记
我正在使用Laravel不知道我是否应该使用<;表格>;执行ajax put请求时是否标记,laravel,Laravel,我正在使用axios.put()向我的应用程序后端发出一个简单的put请求 这一切都很有效,我有一个绑定到vue的按钮,就像@click=“submitForm” 然而,环顾四周,我发现有些人仍然将其输入字段包装成如下形式: <form method="POST" @submit.prevent="onSubmit" action="{{ route('someRoute') }}" id="form-submit"> {{ method_field('PUT') }} {{ csr
axios.put()向我的应用程序后端发出一个简单的put请求代码>
这一切都很有效,我有一个绑定到vue的按钮,就像@click=“submitForm”
然而,环顾四周,我发现有些人仍然将其输入字段包装成如下形式:
<form method="POST" @submit.prevent="onSubmit" action="{{ route('someRoute') }}" id="form-submit">
{{ method_field('PUT') }}
{{ csrf_field() }}
{{method_字段('PUT')}
{{csrf_field()}}
即使我不使用像上面那样的表单,我在调用ajax put请求时也会得到相同的结果
默认情况下,Laravel allready在resources/assets/js/bootstrap.js中向axios添加csfr头
那么,有什么理由我仍然应该像上面那样包装我的输入吗
感谢您使用的是Ajax请求,在这种情况下,标准的“表单提交”将被阻止。在其周围放置表单
不是必须的,特别是如果您使用按钮
元素,它无论如何都不是一个经典的表单元素。您的ajax请求无论您是否在表单标记中输入,都无关紧要,因为请求仍然从服务器发送和接收数据。
我会使用一个表单标记,因为每个人都可以更容易地读取标记,并且它可以用于在javascript中编写更少的代码——一个例子
<form action="" method="">
<div class="form-group">
<label class="control-label">Input</label>
<input type="text" name="input" />
</div>
</form>
$(document).ready(function() {
$('#some-form').on('submit', function() {
var data = $(this).serialize();
... do whatever you want (like ajax call) ...
return false;
});
);
输入
$(文档).ready(函数(){
$(“#某种形式”)。在('submit',function()上{
var data=$(this.serialize();
…想做什么就做什么(比如ajax调用)。。。
返回false;
});
);