为什么我的C#函数没有从Ajax Javascript代码执行?

btalbot

我的页面上有一个HTML画布。当我单击画布时,将绘制一个简单的点。我将坐标传递到我的InsertIntoDB函数中,以将x和y坐标输入到MS SQL Server数据库中,但这没有发生。

但是,我可以将C#调用放入HTML中

元素,并使其正常工作,只要我使用虚拟的xCoord和yCoord编号并返回某些值即可(不是void)。

我的代码实际上弹出了“成功!” 警报,但是当我运行SQL查询时,没有INSERT。这是来自Default.aspx的代码:

function insertIntoDB(x, y) {
        try
        {
            $.ajax({
                type: 'POST',
                url: 'Default.aspx/InsertPoints', 
                data: "{'xCoord': '" + x + "', 'yCoord': '" + y + "'}",

                //    '{"xCoord": "' + x + '", "yCoord": "' + y + '"}',
                success: function (data) {
                    alert("Success!");
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert("Fail: " + textStatus);
                }
            });
        }
        catch (e)
        {
            alert(e);
        }
    }

这是Default.aspx.cs中的C#代码:

[WebMethod]
    public static void InsertPoints(int xCoord, int yCoord) {
        string myConn = "Data Source=MYDATABASEINFO;Initial Catalog=DATABASENAME;Integrated Security=False;User ID=USERID;Password=MYPASSWORD";
        SqlConnection myConnection = new SqlConnection(myConn);
        try
        {
            myConnection.Open();
            SqlCommand myCommand= new SqlCommand("INSERT INTO DRAW (xCoord, yCoord) " +
                "Values (" + xCoord + ", " + yCoord + ");", myConnection);

            myCommand.ExecuteNonQuery();

            myConnection.Close();
        } 
        catch(Exception e) 
        {
            Console.WriteLine(e.ToString());
        }
    }

谢谢你的帮助。

萨默·阿扎齐(Sameer Azazi)

您尝试将json数据发送到服务器,然后必须声明其内容类型。

为内容类型添加jquery ajax选项。

function insertIntoDB(x, y) {
        try
        {
            var data = {
                "xCoord": x,
                "yCoord": y
            };


            $.ajax({
                type: 'POST',
                url: 'Default.aspx/InsertPoints', 
                data: JSON.stringify(data), 
                contentType: 'application/json',
                success: function (data) {
                    alert("Success!");
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert("Fail: " + textStatus);
                }
            });
        }
        catch (e)
        {
            alert(e);
        }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么我的 C++ 函数没有被执行?

为什么我的 C# 代码没有正确中断?

为什么此Javascript代码没有按顺序执行?

为什么不执行此JavaScript代码?

为什么我的代码在输入全名时没有执行 nextLine() 函数就终止了?

为什么我的代码在输入全名时没有执行 nextLine() 函数就终止了?

这个 JavaScript 代码没有被执行

为什么我的 lambda 函数没有被执行?

JavaScript为什么某些代码要先于其余代码执行?

有什么办法可以从Java代码执行javascript函数

Javascript等待Ajax成功执行代码

执行通过AJAX检索的JavaScript代码?

无法在函数内部执行的JavaScript代码

为什么我的javascript函数没有抛出错误?

为什么我的JavaScript函数显然没有被调用?

为什么javascript回调函数没有执行?

为什么没有在ASP.NET MVC中执行内联JavaScript代码?

为什么我的JavaScript代码没有显示“未找到”?

为什么在我滚动之前似乎没有 JavaScript 代码?

为什么没有执行ajax请求?

ReactJS-在ajax函数呈现数据后执行javascript代码

为什么for函数没有执行

当我在OnClientClick中调用Javascript函数时,为什么我的Javascript函数没有被调用

在没有jquery的元素创建后如何执行javascript代码?

为什么我的 if 没有执行

为什么我的目标没有执行?

为什么我的代码没有递增?

当我知道定义已处理后,为什么我的bash函数没有执行?

如何在C#(.NET)中执行Javascript代码