Laravel Blade form表单绑定点击事件到controller
Posted YuNansen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel Blade form表单绑定点击事件到controller相关的知识,希望对你有一定的参考价值。
最近在用laravel写管理后台,发现了一个小问题:Laravel Blade form表单绑定点击事件到controller。特意在此将解决的方法记录一下,以便自己后面查阅。
首先将代码贴下来:
<form action="" method="get" id="searchForm">
<div class="row">
<div class="col-lg-3">
<div class="input-group">
<span class="input-group-addon">账号</span>
<input type="text" class="form-control" name="name" placeholder="账号"
value=" request("name") ">
</div>
</div>
@if($_user->is_super_admin == 1 || in_array("agent_rate.excel", $own_routers))
<button type="button" class="btn btn-success exceldownload">导出excel表格</button>
<input id="exceldownload" type="checkbox" hidden name="exceldownload" value="exceldownload">
@endif
<div class="col-lg-2 pull-right">
<div class="input-group">
<button type="submit" class="btn btn-primary excel">搜索</button>
<button type="button" class="btn btn-warning" id="restSearchForm">重置</button>
@if($_user->is_super_admin == 1 || in_array("agent_rate.store", $own_routers))
<a class="btn btn-info" href=" route('agent_rate.create') ">添加</a>
@endif
</div>
</div>
</div>
</form>
<script>
$('.exceldownload').click(function()
$('#exceldownload').click() && $('.excel').click() && $('#exceldownload').click();
);
</script>
在上面一段代码中,一开始点击exceldownload按钮,怎么样也无法进行跳转,经过打印发现controller中的create方法也没有执行。
经过调试发现至关重要的代码在下方:
<button type="submit" class="btn btn-primary excel">搜索</button>
这里的excel要和下方js中的excel保持一致:
$('#exceldownload').click() && $('.excel').click() && $('#exceldownload').click();
也就是我们在通过按钮提交表单的时候,在blade中要时刻注意id,我们要给每个空间赋值一个id才可以进行操作(原谅我前端不太精通,只能记录下来供自己查阅)。
PS:发一个与本文无关的 笔记:
如果我们的openVPN报错:All TAP-Windows adapters on this system are currently in use,可以从以下两篇文章找到解决方案:
https://www.itdaan.com/blog/2013/09/02/19e1901cbb2ba5b2386ab7fb942fd706.html
https://jingyan.baidu.com/article/fb48e8bef382b56e622e1490.html
亲测可行。
这里再强调一个laravel的知识点,每次更改完配置之后,记得执行命令:
php artisan config:cache
这样子能更新配置缓存。
以上是关于Laravel Blade form表单绑定点击事件到controller的主要内容,如果未能解决你的问题,请参考以下文章
使用 Blade 模板的 Laravel 5 表单中预选选项的条件 @if 语句
将原始 html 从 Vue 返回到 Laravel Blade