Jquery tableDnD - 如何创建一个带有 ID 和 ondrop 位置的 ajax?

发布于 2024-12-09 17:10:04 字数 935 浏览 1 评论 0原文

我的代码:

  <script type="text/javascript">
$(document).ready(function() {
    // Initialise the table
    $('#admintabel').tableDnD({
        onDrop: function(table, row) {

        }
    });

});
</script>

如何使用 a 中的参数位置和 ID 创建对示例 /sort 的 ajax 调用,如下所示:[position, ID] onDrop?我的桌子应该是什么样子。

更新:

我正在尝试创建一个数组,例如:

BREDBANDS[id]   1
BREDBANDS[id]   2
BREDBANDS[id]   3

我当前的测试数据:

data: {
                  BREDBANDS: [1, 2, 3]                  },

并且它正在发布以下内容:

BREDBANDS[] 1
BREDBANDS[] 2
BREDBANDS[] 3

这给出了 500 错误。

我的 Rails 操作将数据发布到:

  def sort
  params[:bredbands].each_with_index do |id, index|
    Bredband.update_all(['position=?', index+1], ['id=?', id])
  end
  render :nothing => true
end

My code:

  <script type="text/javascript">
$(document).ready(function() {
    // Initialise the table
    $('#admintabel').tableDnD({
        onDrop: function(table, row) {

        }
    });

});
</script>

How do I create an ajax call to example /sort with the parameters position and ID in a has like this: [position, ID] onDrop? And how should my table be like.

Update:

I am trying to create an array like:

BREDBANDS[id]   1
BREDBANDS[id]   2
BREDBANDS[id]   3

My current test data:

data: {
                  BREDBANDS: [1, 2, 3]                  },

And it is posting this:

BREDBANDS[] 1
BREDBANDS[] 2
BREDBANDS[] 3

Which is giving a 500 error.

My Rails action which the data is posted to:

  def sort
  params[:bredbands].each_with_index do |id, index|
    Bredband.update_all(['position=?', index+1], ['id=?', id])
  end
  render :nothing => true
end

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半仙 2024-12-16 17:10:04

很难理解您实际上在问什么,但发出 Ajax 请求应该通过以下两种方式中的任何一种来完成:

$.ajax({
    type: "GET",
    url: "/sort?" + $.tableDnD.serialize(),
    success: function(){
        ...
    }
});

$.ajax({
    type: "POST",
    url: "/sort",
    data: $("tr", "$admintabel").map(function(){
        return this.id;
    }),
    success: function(){
        ...
    }
});

但看起来您需要为您的 TR 元素提供 ID。然后你应该能够调用这个:

$.tableDnD.serialize();

它将序列化表的数据及其行 ID。

It's hard to understand what you're actually asking but making an Ajax request should be done in any of these two ways:

$.ajax({
    type: "GET",
    url: "/sort?" + $.tableDnD.serialize(),
    success: function(){
        ...
    }
});

or

$.ajax({
    type: "POST",
    url: "/sort",
    data: $("tr", "$admintabel").map(function(){
        return this.id;
    }),
    success: function(){
        ...
    }
});

But as it seems you need to provide IDs to your TR elements. Then you should be able to call this:

$.tableDnD.serialize();

which will serialize data of the table and it's row IDs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文