此刻学习Django,我写了一个显示项目列表的页面。每行都有一个删除按钮。我想编写一个JQuery函数来对我的AJAX API进行AJAX调用,以删除与该行关联的项目。
我今天才开始关注JQuery(因为我不熟悉JS,因为我不熟悉Web开发)并坚持尝试为每个按钮创建一个唯一的引用,但仍然引用一个JQuery脚本(如果这有意义的话) )。
有人可以建议实现此目的的最佳方法以及相应的JQuery将引用点击吗?
我一直在尝试做类似的事情;
$('#deletesub').click(function(){
var sub_menu_id;
sub_menu_id = $(this).attr("data_sub_menu_id");
the_boddy = $(this).attr("body")
$.ajax(
url: '/pages/ajax_request/submenu/',
type: "POST",
data: {id: sub_menu_id, action: "delete"},
dataType: "json",
success: function(data){
do stuff
},
fail: function(data){
do stuff
},
);
});
但是按钮似乎没有做任何事情,因为每个按钮的ID是“deletesub”。我以为我会侥幸逃脱,然后使用$(this)然后与正确的按钮属性进行交互。
非常感谢任何帮助,所以提前谢谢你。
答案 0 :(得分:1)
$('#deletesub').click(function(){
在HTML中,ID只能绑定到单个元素。如果要重复使用ID进行选择或样式化,则应使用类。由于您希望使用相同的选择器定位多个元素,请改为使用类:
$('.deletesub').click(function(){
现在,函数中对$(this)
的引用将限定为单击的元素。
此外,Ajax调用中存在一些语法错误:
ajax属性应该包装在一个对象中:
$.ajax({
url: '',
data: ''
});
fail
属性之后的尾随逗号(或者ajax调用中的最终属性。