在 jqgrid 警告框中删除 3 个选定的记录
Delete 3 selected records in jqgrid alert box
当我 select 从 jqgrid 中删除 3 行时,我希望弹出窗口应显示为 "Delete Selected 3 Records" 但正确显示为 "Delete Selected Records".
以下是我为删除功能编写的代码。
目前它显示错误 "Uncaught TypeError: undefined is not a function".
var ids= $("#jqgrid").jqGrid('getGridParam', 'selrow');
var count=ids.length;
var myDeleteOptions = {
msg: "Delete selected"+count+"records?",
afterComplete: function(response, id){
//alert(response.responseText);
var msg=response.responseText;
var n =msg.search("Deleted");
if(n>=0)
$(".inner").html("<div class='alert alert-success fade in'><button class='close' data-dismiss='alert'>X</button><i class='fa-fw fa fa-thumbs-up'></i> "+msg+" </div>");
else
$(".inner").html("<div class='alert alert-danger fade in'><button class='close' data-dismiss='alert'>X</button><i class='fa-fw fa fa-thumbs-down'></i> "+msg+" </div>");
}
};
您没有发布更完整的 JavaScript 您使用的代码。 jqGrid 的 delGridRow
方法有 msg
选项,但是您需要在 调用 delGridRow
方法之前直接动态设置选项 。这是第一个问题。
您代码中的第二个问题:明显的错误。您使用 selrow
选项检测多选模式下所有已删除行的 ids。而不是你应该使用 selarrrow
选项,它是所选行的 id 数组。或者,您可以使用 get comma-separated 从对话框的 #DelData
隐藏字段中删除 ID 的列表。
所以我建议您使用 beforeShowForm
回调而不是使用 msg
选项。在回调内部,您可以将新文本分配给 .delmsg
beforeShowForm: function ($form) {
var ids = $form.find("#DelData>td").text().split(",");
if (ids.length > 1) {
$form.find(".delmsg").text("Delete selected " + ids.length + " records?")
} else {
$form.find(".delmsg").text("Delete selected record?")
}
}
请参阅 the demo,它显示的对话框类似于
或喜欢
取决于删除的行数。
当我 select 从 jqgrid 中删除 3 行时,我希望弹出窗口应显示为 "Delete Selected 3 Records" 但正确显示为 "Delete Selected Records".
以下是我为删除功能编写的代码。 目前它显示错误 "Uncaught TypeError: undefined is not a function".
var ids= $("#jqgrid").jqGrid('getGridParam', 'selrow');
var count=ids.length;
var myDeleteOptions = {
msg: "Delete selected"+count+"records?",
afterComplete: function(response, id){
//alert(response.responseText);
var msg=response.responseText;
var n =msg.search("Deleted");
if(n>=0)
$(".inner").html("<div class='alert alert-success fade in'><button class='close' data-dismiss='alert'>X</button><i class='fa-fw fa fa-thumbs-up'></i> "+msg+" </div>");
else
$(".inner").html("<div class='alert alert-danger fade in'><button class='close' data-dismiss='alert'>X</button><i class='fa-fw fa fa-thumbs-down'></i> "+msg+" </div>");
}
};
您没有发布更完整的 JavaScript 您使用的代码。 jqGrid 的 delGridRow
方法有 msg
选项,但是您需要在 调用 delGridRow
方法之前直接动态设置选项 。这是第一个问题。
您代码中的第二个问题:明显的错误。您使用 selrow
选项检测多选模式下所有已删除行的 ids。而不是你应该使用 selarrrow
选项,它是所选行的 id 数组。或者,您可以使用 get comma-separated 从对话框的 #DelData
隐藏字段中删除 ID 的列表。
所以我建议您使用 beforeShowForm
回调而不是使用 msg
选项。在回调内部,您可以将新文本分配给 .delmsg
beforeShowForm: function ($form) {
var ids = $form.find("#DelData>td").text().split(",");
if (ids.length > 1) {
$form.find(".delmsg").text("Delete selected " + ids.length + " records?")
} else {
$form.find(".delmsg").text("Delete selected record?")
}
}
请参阅 the demo,它显示的对话框类似于
或喜欢
取决于删除的行数。