如何点击添加动作在laravel 5.5中用ajax打开模态?
控制台
未捕获的TypeError:无法读取未定义的属性“reset” at addForm((index):104) 在HTMLAnchorElement.onclick((index):57)
index.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link href="{{ asset('assets/bootstrap/css/bootstrap.min.css') }}" rel="stylesheet">
<link href="{{ asset('assets/dataTables/css/dataTables.bootstrap.min.css') }}" rel="stylesheet">
</head>
<body>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapse" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Oxbir</a>
</div>
<div class="collapse navbar-collapse" id="navbar">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">Separated link</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">One more separated link</a></li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="active"><a href="/">Fixed Top <span class="sr-only">(current)</span></a></li>
</ul>
</div>
</div>
</nav>
<div class="container">
<div class="row">
<div class="col-md-12">
<div class="panel panel-default">
<div class="panel-heading">
<h4>Contact List
<a onclick="addForm()" class="btn btn-primary pull-right" style="margin-top: -8px">Add Contact</a>
</h4>
</div>
<div class="panel-body">
<table id="contact-table" class="table table-striped">
<thead>
<tr>
<th>No</th>
<th>Name</th>
<th>Email</th>
<th></th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<script src="{{ asset('assets/jquery/jquery-1.12.4.min.js') }}"></script>
<script src="{{ asset('assets/bootstrap/js/bootstrap.min.js') }}"></script>
<script src="{{ asset('assets/dataTables/js/jquery.dataTables.min.js') }}"></script>
<script src="{{ asset('assets/dataTables/js/dataTables.bootstrap.min.js') }}"></script>
<script src="{{ asset('assets/validator/validator.min.js') }}"></script>
<script src="{{ asset('assets/bootstrap/js/ie10-viewport-bug-workaround.js') }}"></script>
<script type="text/javascript">
$('#contact-table').DataTable({
processing: true,
serverSide: true,
ajax: "{{ route('api.contact') }}",
columns: [
{data: 'id', name: 'id'},
{data: 'name', name: 'name'},
{data: 'email', name: 'email'},
{data: 'action', name: 'action', orderable: false, searchable: false},
]
});
function addForm() {
save_method = "add";
$('input[name=_method]').val('POST');
$('#modal-form').modal('show');
$('#modal-form form')[0].reset();
$('.modal-title').text('Add Contact');
}
$(function(){
$('#modal-form form').validator().on('submit', function (e) {
if (!e.isDefaultPrevented()){
var id = $('#id').val();
if (save_method == 'add') url = "{{ url('contact') }}";
else url = "{{ url('contact') . '/' }}" + id;
$.ajax({
url : url,
type : "POST",
// data : $('#modal-form form').serialize(),
data: new FormData($("#modal-form form")[0]),
contentType: false,
processData: false,
success : function(data) {
$('#modal-form').modal('hide');
table.ajax.reload();
swal({
title: 'Success!',
text: data.message,
type: 'success',
timer: '1500'
})
},
error : function(data){
swal({
title: 'Oops...',
text: data.message,
type: 'error',
timer: '1500'
})
}
});
return false;
}
});
});
</script>
</body>
</html>
但我在控制台看到了。
未捕获的TypeError:无法读取未定义的属性“reset” 在addForm((index):104)