datatables增删改查php,jQuery+datatables插件实现Ajax加载数据与增删改查功能示例_白峰_前端开发者...

本文实例讲述了

这里给大家分享一下我在项目中用datatables实现ajax加载数据与增删改查

注意,需要引入

搜索

新增

编辑

删除

职业姓名性别爱好

//点击查找

$("#search").click(function () {

table.ajax.reload();

});

//初始化datatables

var table = $('#example').DataTable({

"searching": false,

"serverSide": true,

"bProcessing": true,

"bPaginate": true, //翻页功能

"bLengthChange": true, //改变每页显示数据数量

"bFilter": true, //过滤功能

"bSort": false, //排序功能

"sPaginationType": "full_numbers",

"fnServerData": function (sSource, aoData, fnCallback) {

var json = {

"page": {

"start": aoData[3].value,

"length": aoData[4].value,

},

"search": {

"xb": $("#searchTitle").val()

}

};

$.ajax({

"dataType": 'json',

"type": "POST",

"url": server + "user/queryUser.do",

"contentType": "application/json; charset=utf-8",

"data": JSON.stringify(json),

"success": function (data) {

data.recordsTotal = data.page.recordsTotal;

data.recordsFiltered = data.page.recordsTotal;

fnCallback(data);

}

});

},

"oLanguage": {

"sLengthMenu": "每页显示 _MENU_ 条记录",

"sZeroRecords": "抱歉, 没有找到",

"sInfoEmpty": "没有数据",

"sInfoFiltered": "(从 _MAX_ 条数据中检索)",

"oPaginate": {

"sFirst": "首页",

"sPrevious": "前一页",

"sNext": "后一页",

"sLast": "尾页"

},

"sZeroRecords": "没有检索到数据",

},

"aoColumns": [

{"data": "zy"},

{"data": "xm"},

{"data": "xb"},

{"data": "fov"}

]

});

///

//增加

$("#add").click(function () {

layer.open({

type: 1,

skin: 'layui-layer-rim', //加上边框

area: ['420px', '240px'], //宽高

btn: ['确定'],

yes: function (index, layero) {

var json = {

"zy": $("#zhiy").val(),

"xm": $("#name").val(),

"xb": $("#sex").val(),

"fov_ck": $("#aihao").val()

};

$.ajax({

type: "POST",

url: server + "user/addUser.do",

contentType: "application/json; charset=utf-8",

data: JSON.stringify(json),

dataType: "json",

success: function (data) {

if (data.success == true) {

layer.msg(data.msg);

} else if (data.success == false) {

layer.msg(data.msg);

}

}

});

layer.close(index);

table.ajax.reload();

},

content: '职业:' + '' + '
姓名:'

+ '' + '
性别:'

+ '' + '
爱好:'

+ ''

});

});

//选中一行触发

$('#example tbody').on('click', 'tr', function () {

if ($(this).hasClass('selected')) {

$(this).removeClass('selected');

adatid = "";

}

else {

table.$('tr.selected').removeClass('selected');

$(this).addClass('selected');

adatid = table.row(this).data().guid;

adata = table.row(this).data().zy;

bdata = table.row(this).data().xm;

cdata = table.row(this).data().xb;

ddata = table.row(this).data().fov;

}

});

//修改

$("#change").click(function () {

if (adatid === '') {

alert("请选中要修改的数据");

} else {

layer.open({

type: 1,

skin: 'layui-layer-rim', //加上边框

area: ['420px', '240px'], //宽高

btn: ['确定'],

yes: function (index, layero) {

var json = {

"guid": adatid,

"zy": $("#cid").val(),

"xm": $("#cname").val(),

"xb": $("#csex").val(),

"fov_ck": $("#cage").val()

};

$.ajax({

type: "POST",

url: server + "user/updateUser.do",

contentType: "application/json; charset=utf-8",

data: JSON.stringify(json),

dataType: "json",

success: function (data) {

if (data.success == true) {

layer.msg(data.msg);

} else if (data.success == false) {

layer.msg(data.msg);

}

}

});

layer.close(index);

table.ajax.reload();

},

content: '职业:' + '' + '
姓名:'

+ '' + '
性别:'

+ '' + '
爱好:'

+ ''

});

}

$("#cid").val(adata);

$("#cname").val(bdata);

$("#csex").val(cdata);

$("#cage").val(ddata);

});

//删除

$("#del").click(function () {

if (adatid === '') {

alert("请删除要修改的数据");

} else {

var json = {

"guid": adatid

};

$.ajax({

type: "POST",

url: server + "user/deleteUser.do",

contentType: "application/json; charset=utf-8",

data: JSON.stringify(json),

dataType: "json",

success: function (data) {

if (data.success == true) {

layer.msg(data.msg);

} else if (data.success == false) {

layer.msg(data.msg);

}

}

});

table.ajax.reload();

}

});

更多关于

希望本文所述对大家jQuery程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个使用 dataTables 实现增删改查并与后端交互的示例代码: HTML: ```html <!DOCTYPE html> <html> <head> <title>DataTables Example</title> <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.24/css/jquery.dataTables.min.css"> <script type="text/javascript" src="https://code.jquery.com/jquery-3.5.1.min.js"></script> <script type="text/javascript" src="https://cdn.datatables.net/1.10.24/js/jquery.dataTables.min.js"></script> </head> <body> <h1>DataTables Example</h1> <table id="example" class="display" style="width:100%"> <thead> <tr> <th>ID</th> <th>Name</th> <th>Age</th> <th>Gender</th> <th>Action</th> </tr> </thead> <tbody> </tbody> </table> <br> <button id="addButton">Add</button> </body> <script type="text/javascript"> var dataTable; $(document).ready(function() { dataTable = $('#example').DataTable({ "ajax": "backend.php?action=get", "columns": [ { "data": "id" }, { "data": "name" }, { "data": "age" }, { "data": "gender" }, { "defaultContent": "<button>Edit</button><button>Delete</button>" } ] }); $('#addButton').click(function() { addData(); }); $('#example tbody').on('click', 'button', function() { var data = dataTable.row($(this).parents('tr')).data(); if ($(this).text() == "Edit") { editData(data); } else { deleteData(data); } }); }); function addData() { var name = prompt("Name:"); var age = prompt("Age:"); var gender = prompt("Gender:"); $.ajax({ url: "backend.php", type: "POST", data: { action: "add", name: name, age: age, gender: gender }, success: function(result) { dataTable.ajax.reload(null, false); } }); } function editData(data) { var name = prompt("Name:", data.name); var age = prompt("Age:", data.age); var gender = prompt("Gender:", data.gender); $.ajax({ url: "backend.php", type: "POST", data: { action: "edit", id: data.id, name: name, age: age, gender: gender }, success: function(result) { dataTable.ajax.reload(null, false); } }); } function deleteData(data) { if (confirm("Are you sure to delete?")) { $.ajax({ url: "backend.php", type: "POST", data: { action: "delete", id: data.id }, success: function(result) { dataTable.ajax.reload(null, false); } }); } } </script> </html> ``` backend.php: ```php <?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $action = $_POST["action"]; if ($action == "add") { $name = $_POST["name"]; $age = $_POST["age"]; $gender = $_POST["gender"]; $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('" . $name . "', '" . $age . "', '" . $gender . "')"; $conn->query($sql); } else if ($action == "edit") { $id = $_POST["id"]; $name = $_POST["name"]; $age = $_POST["age"]; $gender = $_POST["gender"]; $sql = "UPDATE MyGuests SET firstname='" . $name . "', lastname='" . $age . "', email='" . $gender . "' WHERE id=" . $id; $conn->query($sql); } else if ($action == "delete") { $id = $_POST["id"]; $sql = "DELETE FROM MyGuests WHERE id=" . $id; $conn->query($sql); } else if ($action == "get") { $sql = "SELECT * FROM MyGuests"; $result = $conn->query($sql); $data = array(); while ($row = $result->fetch_assoc()) { $data[] = $row; } echo json_encode(array("data" => $data)); } $conn->close(); ?> ``` 注意:上面的代码仅供参考,需要根据具体情况进行修改。同时,需要在后端进行安全验证和防止 SQL 注入等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值