Ajax取值问题

liang040707 2016-08-01 03:16:59
	$.post("selectmenu", function(result) {
$.each(result, function(key, obj) {
$("#table").append(
"<tr><td>" + '<input type="checkbox" name="checkbox" value='+ obj.m_id + ' />'
+ "</td><td>" + obj.m_id + "</td><td>" + obj.m_name
+ "</td><td>" + obj.m_img + "</td><td>"
+ obj.m_price + "</td><td>" + obj.dishes.d_type
+ "</td><td>" +' <a href="select.html?id2='+obj.m_id+' " id="delete"">删除</a> '+ "</td></tr>")
});
$("#delete").click(function(){
$.post("deletemenu2",function(){

});
});


我要在$("#delete").click(function(){
$.post("deletemenu2",function(){

});
});这个里面怎么获得id2的值呢
...全文
670 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2016-08-03
  • 打赏
  • 举报
回复
id重复了,只有第一个能绑定click事件,改为class来做
   $.post("selectmenu", function (result) {
        $.each(result, function (key, obj) {
            $("#table").append(
                    "<tr><td>" + '<input type="checkbox" name="checkbox" value=' + obj.m_id + ' />'
                            + "</td><td>" + obj.m_id + "</td><td>" + obj.m_name
                            + "</td><td>" + obj.m_img + "</td><td>"
                            + obj.m_price + "</td><td>" + obj.dishes.d_type
                            //自定义属性存储下m_id属性
                            + "</td><td>" + ' <a href="select.html?id2=' + obj.m_id + '" class="delete" m_id="' + obj.m_id + '">删除</a> ' + "</td></tr>")
        });
        $("#table").find$("a.delete").click(function () {
            var m_id = $(this).attr('m_id');
            alert(m_id)
            $.post("deletemenu2", function () {

            });
            return false;//阻止连接跳转
        });
    });
RockeyCui 2016-08-02
  • 打赏
  • 举报
回复
楼主可以这样,不用设置每一行的id,只需设置每一行点击时候把数据发过去就行了,代码如下:我自己写的一个把数据放表格的函数。
function dataToList(idx, item) {
	var $tr = $("<tr></tr>");
	var $td = $("<td class='td_ct td_ttpl td_w40 td_cont'></td>");
	var $tdQ = $("<td class='td_ct td_ttpl td_w40 td_q'></td>");
	var $tdA = $("<td class='td_ct td_ttpl td_w40 td_a'></td>");
	var upBtn = $("<a href=\"javascript:void(0)\" class='pct_icon edit'></a>");
	var delBtn = $("<a href=\"javascript:void(0)\" class='pct_icon del'></a>");

	$tr.append($td.clone().text(item.id));
	$tr.append($tdQ.clone().text(item.question));
	$tr.append($tdA.clone().text(item.answer));
	$tr.append($td.clone().text(getParamShow(levelMap, item.level)));

	delBtn.bind("click", function() {
		pageParam.id = item.id;
		$.ajax({
			url : "delQuestion.do",
			type : "POST",
			data : pageParam,
			success : function(data) {
				alert("删除成功!")
				$(delBtn).parent("td").parent("tr").remove();
			},
			error : function(data) {
				alert("访问后台失败!");
			}
		});
	});
	$tr.append($td.clone().append(upBtn).append(delBtn));
	$tr.appendTo($("#data_body"));
};
licip 2016-08-01
  • 打赏
  • 举报
回复
感觉你问题。 $.each()是这一个循环,你在循环中,用了id="delete",这样一来,有很多id是相同的,id是不能重复的。你可以用class类名去绑定你要执行的函数。
God灬Yong 2016-08-01
  • 打赏
  • 举报
回复
直接在id2的标签上写onclick

52,798

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧