C# 从javascript拖放事件调用C方法

C# 从javascript拖放事件调用C方法,c#,javascript,jquery,C#,Javascript,Jquery,我有下面的jQuery,它可以进行拖放操作- <script> $(function () { $(".draggable").draggable({ helper: "clone" }); $(".drag-div").droppable({ accept: ".draggable", tolerance: "pointer", a

我有下面的jQuery,它可以进行拖放操作-

<script>
    $(function () {
        $(".draggable").draggable({
            helper: "clone"
        });
        $(".drag-div").droppable({
            accept: ".draggable",
            tolerance: "pointer",
            activeClass: "drop-here",
            hoverClass: "drop-here-hover",
            drop: function (event, ui) {
                $.fancybox({
                    href: '#add-quantity'                            
                });
            }
        });
    });
</script>
我需要能够获取刚才拖放的内容的文本值,然后调用一个C方法,该方法需要该参数来更改数据库表。我该怎么做


谢谢。

您需要创建一个web服务方法,您可以在同一页面中创建该方法,然后使用ajax调用该方法。以下是一个示例:


您需要使用Jquery Ajax,然后创建asmx或WebApi。

您使用的是asp.net mvc吗?我想你可以找信号员来做

因此,如果您认为非常重要,最简单的方法可能是创建一个类似ondrop.aspx的函数,并通过某种ajax方法调用它:

<script>
    $(function () {
        $(".draggable").draggable({
            helper: "clone"
        });
        $(".drag-div").droppable({
            accept: ".draggable",
            tolerance: "pointer",
            activeClass: "drop-here",
            hoverClass: "drop-here-hover",
            drop: function (event, ui) {

                var $div = $(ui.draggable); // here access the dragging div
                var param = $div.text();
                $.post('ondrop.aspx', { someparam: param }).done(function (e) {
                    console.log(e);
                });

                $.fancybox({
                    href: '#add-quantity'                            
                });
            }
        });
    });
</script>

看到了吗?在这一点上,您可以访问Draging元素,只需选择所需的wich属性,然后对some.aspx页面进行ajax调用。因此,您使用Request.Form[someparam]处理该页面;并由此生成一个干净的json。

您也可以使用,看一看。SignalR允许您从客户端到服务器,甚至从服务器到客户端执行实时事件。另外,MVC不是使用SignalR的先决条件。@MattBaughan-为什么在WinForms中使用javascript?我收到的模板使用javascript进行拖放。我被要求修改一个SQL数据库。