在我的网格中,我有一个名为“被动”的复选框。单击它时,将其删除。但是在网格上有一个可以从导航栏中拖放内容的地方。我想要的是当有人将其拖放到该行时,应删除该行的复选框(或者可能不可单击)。
TLDR:发生拖放时,请使复选框不可单击/从行中删除复选框。
这是用于添加复选框
if (Model.IsAdmin){
c.Add().Titled("Passive").Encoded(false).Sanitized(false).SetWidth(30).RenderValueAs(p => Html.CheckBox("checkedz", (int)p.Status == 2 ? true : false, new { @class = "removerow", data = p.Id }));
}
拖动->
function drag(ev) {
//console.log($(ev.target));
ev.dataTransfer.setData("maker", $(ev.target).children().eq(0).val());
ev.dataTransfer.setData("makerDiv", $(ev.target).html());
ev.dataTransfer.setData("divclass", $(ev.target).attr('class'));
}
放
function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("maker");
var div = ev.dataTransfer.getData("makerDiv");
var divclass = ev.dataTransfer.getData("divclass");
var requestedid = $(ev.target).children().eq(0).val();
var dataRow = {
requestId: requestedid,
makerId: data
}
console.log(dataRow);
$.ajax({
url: '@Url.Action("_Sel##tMa#####","Re#####" ,new { Area="Op###"})',
type: 'Post',
data: dataRow,
success: function(res) {
waitingDialog.hide();
if (res.Data) {
var hidden = $(ev.target).parents().eq(1).children().eq(2).find('input');
if (hidden.length > 0) {
var id = $(hidden).attr('name');
$('input[name="' + id + '"]').each(function() {
$(this).parents().eq(1).children().eq(11).html('<span class="action-buttons btn btn-warning">' + div + '<span contenteditable="false" class="badge badge-danger" style="margin-left:10px;cursor:pointer;" onclick="ClearMaker(this,\'' + requestedid + '\')" >x</span></span>')
});
} else {
$(ev.target).parents().eq(0).html('<span class="action-buttons btn btn-warning">' + div + '<span contenteditable="false" class="badge badge-danger" style="margin-left:10px;cursor:pointer;" onclick="ClearMaker(this,\'' + requestedid + '\')" >x</span></span>');
}
// location.reload();
} else {
AlertBox("none is selected.");
}
}
})
}