jQuery:如何将复选框附加到表中的每一行?

4

我有一个从json中添加元素的需求:

$.ajax({
                type: "POST",
                url: action,
                data: dataSearch,
                success: function (response) {

                    if (response[0].success == "success") {
                        $.each(response, function (index, record) {
                            var row = $("<tr />");
                            $("<td />").text(record.clavemat).appendTo(row);
                            $("<td />").text(record.tipomat).appendTo(row);
                            $("<td />").text(record.titulomat).appendTo(row);
                            $("<td />").text(record.autormat).appendTo(row);
                            $("<td />").text(record.editmat).appendTo(row);
                            $("<td />").text(record.edicmat).appendTo(row);
                            //Append checkbox to each row
                            row.addClass("alt");
                            row.appendTo(".resultsSearch");
                        });
                    } else {
                        alert("Data not found");
                    }

                }
            });
            return false;

我希望您能在每行的最后一列添加复选框,但我不知道如何实现。谢谢!
1个回答

10

你尝试过吗?

$("<td />").html('<input type="checkbox"/>').appendTo(row);

顺便问一句,如果你从服务器获取信息,你确定POST是最好的选择吗?或者当你发出请求时,你改变了服务器的状态吗? 如果不是这种情况,请查看何时使用Post或Get


之后我添加了复选框...为什么要忽略这个函数?$('table tr').click(function() { check = $(this).children('td').children('input[type=checkbox]'); if (check.attr('checked')) check.attr('checked',false); else check.attr('checked',true); }); 用于在单击行的任何部分时检查复选框是否被选中。 - SoldierCorp
如果您在document.ready时添加函数,它将无法工作,因为行尚未创建,您应该使用.on。 - Mario Corchero
太好了,谢谢!顺便说一句,希望你不介意我加你到Facebook(Edgar Ramirez,SoldierCorp)...祝好! - SoldierCorp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接