php - 在 laravel 刀片中的下拉选择事件中未打开模态
问题描述
在我的 laravel 应用程序中,我在表单中有一个包含三个选项的下拉菜单。
我正在通过我的控制器通过数据库加载表单选项。
{{ Form::select('roles', $roles , $userRole,array('class' => 'form-control txt_txt','id'=>'chgRole')) }}
这基本上会呈现这样的东西,
<select class="form-control txt_txt" id="chgRole" name="roles">
<option value="Admin">Admin</option>
<option value="Regional Admin">Regional Admin</option>
<option value="User" selected="selected">User</option>
</select>
'Admin'
现在,当用户从下拉列表中选择选项时,我想显示带有消息的模式。
这是我到目前为止所做的......
<script>
jQuery("#chgRole").on("change", function() {
var sOptionVal = jQuery(this).val();
if (/modal/i.test(sOptionVal)) {
var $selectedOption = jQuery(sOptionVal);
$selectedOption.modal('show');
}
});
</script>
<div id="Admin" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Role is changing to Admin</h4>
</div>
<div class="modal-body info">
<p>Message
</p>
</div>
<div class="modal-footer addHEIGHT">
</div>
</div>
</div>
</div>
但它没有打开模式,甚至没有在控制台中显示任何错误......
解决方案
正如 Hassan 在评论中提到的,您需要通过 # 来获取 ID
由于您正在从数据库中加载选项值,我建议您执行以下操作。
模态
<div id="Admin" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Role is changing to Admin</h4>
</div>
<div class="modal-body info">
<p>Message
</p>
</div>
<div class="modal-footer addHEIGHT">
</div>
</div>
</div>
</div>
并将您的 JQuery 更改为此
<script>
$("#chgRole").on("change", function() {
var sOptionVal =$(this).val();
if(sOptionVal=='Admin'){
$( '#Admin' ).modal('show');
}
});
</script>
并确保包括
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
推荐阅读
- javascript - 如何将点击事件绑定到jquery中的相关元素?
- json - 在 MarkLogic 中,如何为所有文档添加自定义文档属性?
- c# - 如何尝试使用 Bing map rest APi 进行地理编码。发布方法
- pdf - 使用firebase在react redux上刷新后如何使文件保持不变
- npm - 我安装了 nativescript 但 tns 命令没有在 mac 上运行
- web-scraping - 如何使用 scrapy 抓取任何网站,以使网站不会将我的机器人视为注册或登录用户?
- android - Kotlin 使用 getter 作为只读变量
- mongodb - 以微服务精神从本地服务器连接到本地 Mongodb Docker 容器
- php - 将值设置为发布变量 $this->input->post codeigniter
- c - 在 x11 中命名一个新窗口