使用jQuery實現(xiàn)一個類似GridView的編輯,更新,取消和刪除的功能
先來看看下面實時效果演示:
用戶點擊編輯時,在點擊行下動態(tài)產(chǎn)生一行。編輯銨鈕變?yōu)閐isabled。
新產(chǎn)生的一行有更新和取消的銨鈕,點擊“取消”銨鈕,刪除剛剛動態(tài)產(chǎn)生的行。編輯銨鈕狀態(tài)恢復(fù)。
更新與刪除銨鈕功能沒有什么特別的。
在ASP.NET MVC視圖html代碼如下,普通的表格table,普通的html標(biāo)簽:
刪除的銨鈕功能:
$('.Delete').click(function () {
var flag = confirm('你確認(rèn)是否刪除記錄?');
if (flag) {
var tr = $(this).closest('tr');
var obj = {};
obj.Ltc_nbr = tr.find('.SelectSingle').val();
$.ajax({
type: 'POST',
url: "/Highway/LandTransportationCityDelete",
dataType: 'json',
data: JSON.stringify(obj),
contentType: 'application/json; charset=utf-8',
success: function (data, textStatus) {
if (data.Success) {
window.location.href = data.RedirectUrl;
}
else {
alert(data.ExceptionMessage);
return;
}
},
error: function (xhr, status, error) {
alert("An error occurred: " + status + "nError: " + error);
}
});
}
return false;
});
編輯的銨鈕功能,需要動態(tài)產(chǎn)生一新行。處理每個字段的html的標(biāo)簽:
$('.Edit').click(function (e) {
var tr = $(this).closest('tr')
var row = $('<tr>');
row.append($('<td><input class="city_key" type="hidden" value="' + tr.find('.SelectSingle').val() + '" /></td>'));
row.append($('<td></td>'));
$selectCity = $('<select />').attr({ name: 'city', class: 'selectcity' });
$("<option></option>", { value: "", text: "" }).appendTo($selectCity);
$.getJSON("/Highway/GetCities", function (data) {
$.each(data, function (i, item) {
if (item.City_nbr == tr.find('.city_key').val()) {
$("<option></option>", { value: item.City_nbr, text: item.City_Name,selected :"selected" }).appendTo($selectCity);
}
else {
$("<option></option>", { value: item.City_nbr, text: item.City_Name}).appendTo($selectCity);
}
})
});
row.append($('<td></td>').append($selectCity));
row.append($('<td></td>'));
row.append($('<td></td>'));
row.append($('<td></td>'));
$cb = $('<input/>').attr({ type: 'checkbox', class: 'ckbIsActived', checked: tr.find('.ckbIsActived').is(':checked') == true ? 'true' : '' });
row.append($('<td></td>').append($cb));
var $btnUpdate = $('<input/>').attr({ type: 'button', class: 'Update', value: '更新' });
row.append($('<td style="width:40px;"></td>').append($btnUpdate));
var $btnCancel = $('<input/>').attr({ type: 'button', class: 'Cancel', value: '取消' });
row.append($('<td style="width:40px;"></td>').append($btnCancel));
tr.after(row);
$(this).attr("disabled", "disabled");
});
更新銨鈕功能:
$('table.city-list').delegate('.Update', 'click', function (event) {
var tr = $(this).closest("tr");
var obj = {};
obj.Ltc_nbr = tr.find('.city_key').val();
obj.City_nbr = tr.find('.selectcity').val();
obj.IsActived = tr.find('.ckbIsActived').is(':checked');
$.ajax({
type: 'POST',
url: "/Highway/LandTransportationCityUpdate",
dataType: 'json',
data: JSON.stringify(obj),
contentType: 'application/json; charset=utf-8',
success: function (data, textStatus) {
if (data.Success) {
alert("陸運城市更新成功。");
window.location.href = data.RedirectUrl;
}
else {
alert(data.ExceptionMessage);
return;
}
},
error: function (xhr, status, error) {
alert("An error occurred: " + status + "nError: " + error);
}
});
});
還一個取消銨鈕功能:
$('table.city-list').delegate('.Cancel', 'click', function (event) {
var tr = $(this).closest("tr");
tr.prev().find('.Edit').removeAttr('disabled');
tr.remove();
});
以上所述是小編給大家介紹的使用jQuery實現(xiàn)一個類似GridView的編輯,更新,取消和刪除的功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 實例詳解jQuery結(jié)合GridView控件的使用方法
- 利用jQuery及AJAX技術(shù)定時更新GridView的某一列數(shù)據(jù)
- 如何用jQuery實現(xiàn)ASP.NET GridView折疊伸展效果
- JQuery一種取同級值的方式(比如你在GridView中)
- Jquery+ajax請求data顯示在GridView上(asp.net)
- jquery+ashx無刷新GridView數(shù)據(jù)顯示插件(實現(xiàn)分頁、排序、過濾功能)
- 利用jQuery 實現(xiàn)GridView異步排序、分頁的代碼
- asp.net+jquery Gridview的多行拖放, 以及跨控件拖放
- JQuery的ajax基礎(chǔ)上的超強GridView展示
相關(guān)文章
jQuery序列化form表單數(shù)據(jù)為JSON對象的實現(xiàn)方法
這篇文章主要介紹了jQuery序列化form表單數(shù)據(jù)為JSON對象的實現(xiàn)方法,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2018-09-09
jQuery實現(xiàn)點擊表格單元格就可以編輯內(nèi)容的方法【測試可用】
這篇文章主要介紹了jQuery實現(xiàn)點擊表格單元格就可以編輯內(nèi)容的方法,涉及jQuery針對table表格元素的遍歷與動態(tài)操作相關(guān)技巧,需要的朋友可以參考下2016-08-08
使用jquery局部刷新(jquery.load)從數(shù)據(jù)庫取出數(shù)據(jù)
jquery提供了很好的ajax交互,我這里用的是直接返回字符串,用的是jquery.load方法從數(shù)據(jù)庫取出的數(shù)據(jù)2014-01-01
基于jQuery實現(xiàn)鼠標(biāo)點擊導(dǎo)航菜單水波動畫效果附源碼下載
這篇文章主要介紹了基于jQuery實現(xiàn)鼠標(biāo)點擊導(dǎo)航菜單水波動畫效果附源碼下載,需要的朋友參考下2016-01-01
解決Jquery鼠標(biāo)經(jīng)過不停滑動的問題
在鼠標(biāo)經(jīng)過的時候不停的顯示隱藏html元素,正確的寫法應(yīng)該是下面這樣的,需要的朋友可以參考下2014-03-03







