删除所选项(附加搜索部分的jquery)
1.视图端(views)的配置为:
<script>
$(document).ready(function() {
$("#info-grid").kendoGrid({
dataSource: {
type: "json",
transport: {
read: {
url: "@Html.Raw(Url.Action("ListInfo", "GradeMessage"))",
type: "POST",
dataType: "json",
data: additionalData
}
},
schema: {
data: "Data",
total: "Total",
errors: "Errors"
},
error: function(e) {
display_kendoui_grid_error(e);
// Cancel the changes
this.cancelChanges();
},
pageSize: @(defaultGridPageSize),
serverPaging: true,
serverFiltering: true,
serverSorting: true
},
pageable: {
refresh: true,
pageSizes: [@(gridPageSizes)]
},
editable: { confirmation:false,
mode: "inline"
},
scrollable: false,
columns: [ {//列配置
field: "Id",//选择框
headerTemplate: "<input id='mastercheckbox' type='checkbox'/>",
headerAttributes: { style: "text-align:center" },
attributes: { style: "text-align:center" },
template: "<input type='checkbox' value='#=Id#' class='checkboxGroups'/>",
width:
},
{
field: "CompetitorName",
title: "@T("Admin.GradeMessage.CompetitorName")",
width:, {
field: "Id",
title: "@T("Admin.Common.Edit")",
width: ,
template: '<a href="Edit/#=Id#">@T("Admin.Common.Edit")</a>'
}
]
});
}); </script>
2.选中选择框中值
<script type="text/javascript">
var selectedIds = []; $(document).ready(function () {
//search button
$('#search-info').click(function ()
{
//search
var grid = $('#info-grid').data('kendoGrid'); grid.dataSource.page(); //new search. Set page size to 1
//grid.dataSource.read(); we already loaded the grid above using "page" function
//clear selected checkboxes $('.checkboxGroups').attr('checked', false).change(); selectedIds = []; return false;
});
// search CompetitorName
$("#@Html.FieldIdFor(model => model.CompetitorName)").keydown(function (event) {
if (event.keyCode === ) {
$("#search-info").click();
return false;
}
}); //delete selected
$('#delete-selected').click(function(e) {
e.preventDefault(); var postData = {
selectedIds: selectedIds
};
addAntiForgeryToken(postData); $.ajax({
cache: false,
type: "POST",
url: "@(Url.Action("DeleteSelected", "GradeMessage"))",
data: postData,
complete: function(data) {
//reload grid
var grid = $('#info-grid').data('kendoGrid');
grid.dataSource.read();
},
error: function(xhr, ajaxOptions, thrownError) {
alert(thrownError);
},
traditional: true
});
return false;
}); $('#mastercheckbox').click(function () {
$('.checkboxGroups').attr('checked', $(this).is(':checked')).change();
}); //wire up checkboxes.
$('#info-grid').on('change', 'input[type=checkbox][id!=mastercheckbox]', function (e) {
var $check = $(this);
if ($check.is(":checked") == true) {
var checked = jQuery.inArray($check.val(), selectedIds);
if (checked == -) {
//add id to selectedIds.
selectedIds.push($check.val());
}
}
else {
var checked = jQuery.inArray($check.val(), selectedIds);
if (checked > -) {
//remove id from selectedIds.
selectedIds = $.grep(selectedIds, function (item, index) {
return item != $check.val();
});
}
}
updateMasterCheckbox();
});
});
//参赛者姓名搜索
function additionalData()
{
var data = {
keyName: $('#@Html.FieldIdFor(model => model.CompetitorName)').val()
};
addAntiForgeryToken(data);
return data;
} function onDataBound(e) {
$('#info-grid input[type=checkbox][id!=mastercheckbox]').each(function () {
var currentId = $(this).val();
var checked = jQuery.inArray(currentId, selectedIds);
//set checked based on if current checkbox's value is in selectedIds.
$(this).attr('checked', checked > -);
}); updateMasterCheckbox();
} function updateMasterCheckbox()
{
var numChkBoxes = $('#info-grid input[type=checkbox][id!=mastercheckbox]').length;
var numChkBoxesChecked = $('#info-grid input[type=checkbox][id!=mastercheckbox]:checked').length;
$('#mastercheckbox').attr('checked', numChkBoxes == numChkBoxesChecked && numChkBoxes > );
}
</script>
3.控制器端(服务):
[HttpPost]
public ActionResult DeleteSelected(ICollection<int> selectedIds)
{ if (selectedIds != null)
{
var selectd = _gradeMessageService.GetGradeMessagesByIdCollection(selectedIds.ToArray()).FirstOrDefault(p => p.EventId == p.EventSystemMessage.Id);//通过导航属性查询
if (selectd != null)
{
_gradeMessageService.DeleteGradeMessage(selectd);
} } return Json(new { Result = true });
}
删除所选项(附加搜索部分的jquery)的更多相关文章
- 带搜索框的jQuery下拉框插件
由于下拉框的条数有几十个,于是打算找一个可以搜索查找功能的下拉框,刚开始在网上看了几个,都是有浏览器兼容性问题,后来看到这个“带搜索框的jQuery下拉框美化插件 searchable”,看演示代码简 ...
- Django级联删除的选项
Django级联删除的选项 Django模型中的on_delete属性具有如下选项: CASCADE 级联删除,也就是被引用的实体被删除后,相关的记录信息都会被删除. PROTECT 阻止删除被引用的 ...
- mac 使用清除废纸篓或彻底删除某文件 附加: smb afp ftp NAS 访问服务器相关
mac 使用清除废纸篓或彻底删除某文件 附加: smb afp ftp NAS 访问服务器相关 mac 下删除文件方法: 1.使用 cleanmymac 使用 cleamymac 的清理 和 逐个 ...
- 搜索提示時jquery的focusout和click事件沖突問題完美解决
在主流的搜索引擎上搜索時,輸入內容,往往會彈出智能提示.輸入框为input,智能提示區域为suggest.接下來一般有兩種操作: 1.選擇某一提示,則把內容复制到input中 ...
- (GoRails)在导航栏增加自动的搜索功能(jquery插件:easyautocomplete)(gem 'ransack' 搜索对象4000✨)
Global Autocomplete Search 需要用到一个JQuery插件和一个搜索对象的gem EasyAutocomplete jQuery插件: https://github.com/p ...
- Android百度地图附加搜索和公交路线方案搜索
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: 今 ...
- 高德地图关键字搜索删除上一次搜索的Marker
方法:Marker类的 setMap(null);方法 高德是通过循环调用addmarker(i,d)方法 创建marker标记,所以我们需要 把创建的marker标记压入到一个数组,再第二次搜索 ...
- javascript删除option选项的多种方法总结
转自:https://blog.csdn.net/xiaoxuanyunmeng/article/details/16886505 1. JavaScript 代码如下: var oSel=docum ...
- js jquery select 操作 获取值,选中选项,增加,修改,删除
select示例: <select id="sel"> <option value="1">one</option> < ...
随机推荐
- ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录
已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...
- python基础知识5——赋值与深浅拷贝——整数和字符串,列表元组字典
深浅copy 一.数字和字符串 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. 1 import copy 2 # ######### 数字.字符串 #### ...
- Winform 中DataGridView控件添加行标题
有很多种方法. 1.可以在DataGridView控件中的RowStateChanged事件改变行标题单元格的值(Row.HeaderCell.Value) /// <summary> / ...
- SQL Server 数据库的维护(三)__事务(transaction)和锁
--维护数据库-- --事务(transaction)和锁-- --事务(transaction)-- --概述: 事务是指封装了一组T-SQL语句的单个逻辑单元.单元中的所有语句作为一个整体,在满足 ...
- javascript判断对象
var assert = require('chai').assert; describe('Array', function() { describe('#indexOf()', function( ...
- Office 365 系列五 -------- Imap邮箱迁移步骤
当客户购买了我们的Office 365之后,第一个功能必然是会用我们的企业邮箱,如果企业之前是用 263.腾讯.网易等的邮件厂商的话,必然会涉及到邮件的迁移, 其实说到邮箱迁移,我们办法很多,如果人数 ...
- C6713的Boot mode
2014年7月23日,终于把困扰我两个月的问题解决了,甚是嗨皮,所以做下记录,以供后人参考之用. 问题描述:我用的片子是TMS320C6713,通过EMIF总线连接的FLASH,此FLASH分为两部分 ...
- UGUI代码分析
1.canvas,screen模式和world模式区别:screen的绑定摄像机与canvas相对位置不会改变不可改变canvas,world模式下有个event camera相对位置可改变,canv ...
- OO.A.D.P
OO/A/D/P 对象和类 三大特征 对象: 对象是面向对象语言的一个极为重要的特点,所有的面向对象语言都有对象的共性. 1. 职责(单一) 2. 属性(数据.可改变的) 3. 函数(行为.方法.业务 ...
- Oracle 更新表(另一张表)
Update a set(a.province,a.city)= (select province,city from b where b.mobile=a.mobile)