javascript - 使 javascript 方法在所有情况下都有效(在 ajax 调用之前和之后)
问题描述
我正在使用 laravel 5.5,我想做一个页面,其中只有一个显示所有附件类型项目的表格。与附件表具有基本的一对多关系。
在这个页面上,我有一个使用基本 Ajax 帖子创建新条目的字段,所有内容都在 a$(document).ready()
中,代码如下:
var name = $('#name').val();
$.Ajax({
url: '/accessory-type',
type: 'POST',
data: {name: name},
success: function (data) {
$.Ajax({
url: null,
type: 'get',
success: function (data) {
var my_rows = $(data).find('table').html();
$('.accessory_type-table').html(my_rows);
}
});
}
});
问题是:我想通过单击图标或类似的东西来删除一行,但是如果我将代码放在 a 之外,$(document).ajaxComplete
则代码在 Ajax 调用后不起作用。如果我放置在 中$(document).ajaxComplete
,则代码在没有 Ajax 调用的情况下无法工作。
代码完全一样,所以我不想重复两次。
如果我为它创建一个函数,问题仍然存在,我可以在哪里放置我的click()
方法以使其在所有情况下都能正常工作?
这是我要调用的代码:
$(document).ajaxComplete(function () {
$('.fa-trash').click(function () {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.Ajax({
type: "DELETE",
url: "/accessory-type/" + $(this).attr('id'),
success: function (data) {
$.Ajax({
url: null,
type: 'get',
success: function (data) {
var table = $(data).find('table').html();
$('.accessory_type-table').html(table);
}
});
}
});
})
})
我正在接受培训,所以任何帮助/最佳实践/建议或任何东西都很好,不要犹豫!:)
谢谢你的帮助
解决方案
推荐阅读
- web - 在进行网络钓鱼意识活动时如何使我的网站不危险?
- c# - 如何在 PageModel 中为表单分配属性(按按钮),维护选定的页面布局 [ASP.NET/Razor 页面]
- ios - 如何使用 Firebase 防止当前用户的个人资料显示在 collectionView 中
- ssl - 使用 Kubernetes 和 Helm 设置多个 TLS 证书和域
- android - “search?.actionView as SearchView”在移动到第二个 Activity 时崩溃
- python - 将“打字”对象作为参数传递?
- r - R 单样本 KS 测试
- azure-devops - 如何从 Azure DevOps 管道构建 docker 映像并将其推送到 GitLab 容器注册表?
- python - PySpark:使用基于其他列聚合的列模式填充 NA
- c - 在函数调用中强制转换类型是如何工作的?