如何通过ajax调用将已删除的行名从jQuery中的网格传递到控制器(服务器端)
How do I pass the deleted row name from a grid in jQuery to controller(server-side) with ajax call
我在jQuery成功函数中添加了一行到网格,像这样(编辑添加Rob和Fleix评论):
$(function() {
$('#MyGrid').delegate('a.remove', 'click', function() {
alert("del");
// e.preventDefault();
jQuery.ajax(
{
type: "POST",
url: "Upload/Remove",
data: "removefile=" + stringhtml// error console shows it as undefined
});
$(this).closest('tr').remove();
});
$("#uploadForm").ajaxForm({
iframe: true,
dataType: "xml",
url: "Upload/Index",
success: function(result) {
('#MyGrid tbody').append('<tr><td> ' + stringhtml+ ' </td><td><a href="#"
class="remove">Remove</a></td></tr>');
});
});
ajax调用不是为了删除点击,而是在页面加载后点击。如何使ajax调用删除点击,与传递stringhtml?你们能帮帮我吗?
谢谢你,
michaeld
绑定删除链接的点击事件
$('#MyGrid').delegate('a.remove', 'click', function(e){
e.preventDefault();
$(this).closest('tr').remove();
});
将行追加代码更改为
$('#MyGrid tbody').append('<tr><td> ' + stringhtml+ ' </td><td><a href="#" class="remove">Remove</a></td></tr>');
首先,更新你的"Remove"链接,使它像:
<a href="#" onclick="remove(this.parentNode)">Remove</a>
然后像这样实现你的remove()
函数:
function remove(node) {
node.parentNode.parentNode.removeChild(node.parentNode);
//equivalent: $('#MyGrid tbody')[0].removeChild(node.parentNode);
}
下面是一个例子:http://jsfiddle.net/nNde4/5/
首先,避免使用内联的onclick属性。用$(selector).bind('click', function(e){});
或$(selector).click(function(e){});
代替。在您的情况下,实际上使用live()
会更有意义,因为您不必一遍又一遍地附加每个事件。所以使用下面的代码应该可以工作:
$('#MyGrid a').live('click', function(e){
$(e.target).parent().parent().remove();
});
还要注意,您不必在每次添加行时都调用此方法。只在创建标签时调用一次(加载等),它应该工作得很好
相关文章:
- 如何使用skip参数使用angular ui引导进行服务器端分页
- Webpack开发服务器和React服务器端渲染
- 提示使用服务器端事件处理程序激活JavaScript
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- 将表单数据提交到服务器端
- 使用ajax的服务器端分页&jQuery
- 显示具有服务器端自动时间注销的同步倒计时计时器
- 使用FormData上传AJAX图像;t在服务器端显示图像
- React路由器服务器端渲染和ajax获取数据
- 将数据从服务器端加载到 ExtJs 网格中
- 将剑道网格与服务器端筛选器和服务器端排序结合使用,字段 = NULL
- 在 Dojo 的服务器端增强网格过滤器插件
- 一次将网格视图数据从客户端发送到服务器端
- jQuery DataTables,更新后刷新网格(服务器端处理)
- 剑道UI网格服务器端分组(没有MVC)
- 在服务器端存储网格位置
- 我们应该使用服务器端网格还是Javascript网格?
- 如何通过ajax调用将已删除的行名从jQuery中的网格传递到控制器(服务器端)