无法检索数据属性值



我正在尝试获取data-*属性的值,以使用引导程序进行删除确认。问题是我无法获得data-userid的值。

网页代码

<a href="#" 
class="delete" 
data-userid="{{ $adm->operator_id }}" 
style="color:red;" 
id="deleteuseradmin"  
data-toggle="modal" 
data-target="#deleteuseradmin"><i class="fas fa-times"></i></a>

Javascript Code

<script>
$('#deleteuseradmin').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget) 
var userid = button.data('userid')
// var user_id = '2'
var modal = $(this)
console.log(button);
modal.find('.modal-body #userid').val(userid);
});
</script>

当我控制台按钮时,结果是

管理员视图:488 初始化proto: Object(0) DataTable: ƒ (t) add: ƒ (e,t) addBack: ƒ (e) addClass: ƒ (e) 词缀: ƒ (c) 之后: ƒ () ajaxComplete: ƒ (e) ajaxError: ƒ (e) ajaxSend: ƒ (e) ajaxStart: ƒ (e) ajaxStop: ƒ (e) ajaxSuccess: ƒ (e) alert: ƒ (b) and Self: ƒ (e) animate: ƒ (e,t,n,r) 追加: ƒ () 追加到: ƒ (e) attr: ƒ (e,t) bdatepicker: ƒ (t) 之前: ƒ () 绑定: ƒ (e,t,n) 模糊: ƒ (e,n) 按钮: ƒ (c) 轮播: ƒ (c) 更改: ƒ (e,n) 子项: ƒ (n,r) 清除队列: ƒ (e) 单击: ƒ (e,n) 克隆: ƒ (e,t) 最接近: ƒ (e,t) 折叠: ƒ (c) 组合: ƒ (n) 构造函数: ƒ (e,n) 内容: ƒ (n,r) 上下文菜单: ƒ (e,n) css: ƒ (e,t) data: ƒ (e,t) dataTable: ƒ (t) dataTableExt: {buttons: {...}, 类: {...}, 构建: "bs4/dt-1.10.18", errMode: "alert", 功能: 数组(0), ...}dataTableSettings: [{...}] datepicker: ƒ (t) dblclick: ƒ (e,n) 延迟: ƒ (e,t) 委托: ƒ (e,t,n,r) 取消排队: ƒ (e) 分离: ƒ (e) domManip: ƒ (e,t,n) 下拉列表: ƒ (b) 每个: ƒ (e,t) 可编辑: ƒ (n) editableContainer: ƒ (r) editableform: ƒ (n) editabletypes: {abstractinput: ƒ, list: ƒ, text: ƒ, textarea: ƒ, select: ƒ, ...} editableutils: {inherit: ƒ, setCursorPosition: ƒ, tryParseJson: ƒ, sliceObj: ƒ, getConfigData: ƒ, ...}空: ƒ () 结束: ƒ () 等式: ƒ (e) 错误: ƒ (e,n) 扩展: ƒ () 淡入: ƒ (e,n,r) 淡出: ƒ (e,n,r) fadeTo: ƒ (e,t,n,r) fade切换: ƒ (e,n,r) filter: ƒ (e) find: ƒ (e) 完成: ƒ (e) 第一: ƒ () 焦点: ƒ (e,n) 焦点: ƒ (e,n) 焦点输出: ƒ (e,n) get: ƒ (e) has: ƒ (e) hasClass: ƒ (e) height: ƒ (r,i) hide: ƒ (e,r,i) 悬停: ƒ (e,t) html: ƒ (e) 索引: ƒ (e) init: ƒ (e,t,n) innerHeight: ƒ (r,i) innerWidth: ƒ (r,i) insertAfter: ƒ (e) insertBefore: ƒ (e) is: ƒ (e) jquery: "2.0.3" keydown: ƒ (e,n) 按键: ƒ (e,n) 键: ƒ (e,n) 最后: ƒ () 长度: 0 负载: ƒ (e,t,n) 地图: ƒ (e) 模态: ƒ (c) 鼠标向下: ƒ (e,n) 鼠标输入: ƒ (e,n) 鼠标离开: ƒ (e,n) 鼠标移动: ƒ (e,n) 鼠标输出: ƒ (e,n) 鼠标悬停: ƒ (e,n) 鼠标向上: ƒ (e,n) 下一个: ƒ (n,r) 下一个全部: ƒ (n,r) 下一个直到: ƒ (n,r) not: ƒ (e) off: ƒ (e,t,n) offset: ƒ (e) offsetParent: ƒ () on: ƒ (e,t,n,r,i) one: ƒ (e,t,n,r) outerHeight: ƒ (r,i) outerWidth: ƒ (r,i) 父项: ƒ (n,r) 父项: ƒ (n,r) 父项直到: ƒ (n,r) 弹出框: ƒ (c) 位置: ƒ () 前置: ƒ () 前置: ƒ (e) 上一页: ƒ (n,r) 上一页全部: ƒ (n,r) prevUntil: ƒ (n,r) promise: ƒ (e,t) prop: ƒ (e,t) push: ƒ push() pushStack: ƒ (e) queue: ƒ (e,t) ready: ƒ (e) remove: ƒ (e,t) removeAttr: ƒ (e) removeClass: ƒ (e) removeData: ƒ (e) removeProp: ƒ (e) 全部替换: ƒ (e) 替换为: ƒ () 调整大小: ƒ (e,n) 滚动: ƒ (e,n) scrollLeft: ƒ (i) scrollTop: ƒ (i) scrollspy: ƒ (c) select: ƒ (e,n) 选择器: " 序列化: ƒ () 序列化数组: ƒ () 显示: ƒ (e,r,i) 兄弟姐妹: ƒ (n,r) 大小: ƒ () 切片: ƒ () 滑下: ƒ (e,n,r) slide切换: ƒ (e,n,r) slideUp: ƒ (e,n,r) 排序: ƒ sort() 拼接: ƒ splice() 停止: ƒ (e,t,n) 提交: ƒ (e,n) 制表符: ƒ (c) 文本: ƒ (e) toArray: ƒ () toggle: ƒ (e,r,i) toggleClass: ƒ (e,t) 工具提示: ƒ (c) 触发器: ƒ (e,t) 触发器处理程序: ƒ (e,t) 类型提前: ƒ (c) 取消绑定: ƒ (e,t) undelegate: ƒ (e,t,n) unload: ƒ (e,n) unwrap: ƒ () val: ƒ (e) 宽度: ƒ (r,i) 包装: ƒ (e) 包装全部: ƒ (e) 包装内部: ƒ (e)原型:对象

参考资料 https://www.youtube.com/watch?v=DAitIOhxOOA

在刀片文件中:

<a href="javascript:void(0);" 
class="delete _delete_data" 
data-userid="{{ $adm->operator_id }}" 
style="color:red;" 
<i class="fas fa-times"></i>
</a>

在 js 代码中

<script>
$(document).on('click', '._delete_data', function(){
var user_id = $(this).attr('data-userid');
console.log('user_id::', user_id); //your data attribute value
//now open your modal
$('#deleteuseradmin"').modal('show');
});
</script>

问题在于您对show.bs.modal事件的使用。您正在将其绑定到删除按钮#deleteuseradmin,而它应该绑定到模态窗口本身。

您需要确保删除按钮和删除模式具有不同的id属性。

按钮网页

<a href="#" 
class="delete" 
data-userid="{{ $adm->operator_id }}"
id="deleteButton"
data-toggle="modal" 
data-target="#deleteModal"><i class="fas fa-times"></i></a>

请注意,data-target属性设置为模式窗口deleteModalid

模态网页

<div class="modal modal-danger fade" id="deleteModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
...
</div>

请注意,id属性设置为deleteModal

爪哇语

<script>
$('#deleteModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget) 
var userid = button.data('userid')
var modal = $(this)
console.log(button);
});
</script>

请注意,我们将show.bs.modal事件绑定到模态窗口deleteModalid,而不是按钮的id

最新更新