我目前正在弹出一个引导对话框,以确保用户想要删除某人。当该用户说好的时候,我需要将函数中的值传递给实际的delete方法。目前我尝试过的所有内容都已经过去了#undefined'作为变量。
function RemoveTeamMember(peoplePK) {
//First remove all old click events(so we can reuse), and re-initialize the modal with our new info
$("#ConfirmationDialog #ConfirmationOKButton").off('onclick');
$("#ConfirmationDialog .modal-header .modal-title").text("Remove Team Member?");
$("#ConfirmationDialog #ConfirmationText").addClass('text-danger').text("Are you sure you want to remove this team member?");
$("#ConfirmationDialog #ConfirmationOKButton").html("Remove Member");
//$("#ConfirmationDialog #ConfirmationOKButton").prop("onclick", "PerformRemoveTeamMember(" + peoplePK + ")");
//Bind the new click event for the ok button
//$("#ConfirmationDialog #ConfirmationOKButton").bind('click', { param: peoplePK }, PerformRemoveTeamMember);
$("#ConfirmationDialog #ConfirmationOKButton").data("pid", ''+peoplePK+'');
$("#ConfirmationDialog #ConfirmationOKButton").on('click', function () {
//PerformRemoveTeamMember($(this).data("pid"));
alert($(this).data("pid"));
});
$("#ConfirmationDialog").modal({
show: true
});
}
最终,我需要使用peoplePK变量的值将新的onclick属性附加到按钮,并且此对话框将在多个操作之间重用。这就是我必须动态构建这个按钮的原因。
编辑:添加了如何调用RemoveTeamMember
'<button type="button" class="btn btn-danger btn-sm" onclick="RemoveTeamMember(' + row[0] + ');">Remove Member</button>';`
答案:更改了调用RemoveTeamMember的方式 在今天早上更改了数据表的形成方式后,第[0]行,不再像以前那样提供正确的数据,而是更改为
'<button type="button" class="btn btn-danger btn-sm" onclick="RemoveTeamMember(' + data + ');">Remove Member</button>'
这完全解决了这个问题。