可以';在没有任何Postback asp.net的情况下,不能将记录插入数据库

本文关键字:情况下 不能 数据库 插入 记录 net asp Postback 任何 可以 | 更新日期: 2023-09-27 18:00:27

嗨,我在将记录插入数据库时遇到问题。我使用实体框架作为我的后端。我有以下代码。我无法弄清楚代码中的实际问题,因为在尝试运行时没有显示错误消息。

.aspx

<link rel="stylesheet" href="/Content/jquery-ui.css" type="text/css" />       
<script type="text/javascript" src="/Scripts/1.4.4/jquery.min.js"></script>
<script type="text/javascript" src="/Scripts/1.8.24/jquery-ui.min.js"></script></script>
<script type="text/javascript">      
function SaveRecord() {  
            //Get control's values  
            var Name = $.trim($('#<%=txtCompanyName.ClientID %>').val());
            var msg = "";
            //check for validation  
            if (Name == '') {
                msg += "Please enter Name";
            }
            if (msg.length == 0) {
                //Jquery Ajax call to server side method  
                $.ajax({
                    type: "POST",
                    dataType: "json",
                    contentType: "application/json; charset=utf-8",
                    url: "company_master.aspx/InsertCompany",
                    data: "{'Name':'" + Name + "'}",
                    success: function (response) {
                        if (response.d == true) {
                            $('#lblMsg').text("Saved successfully");
                            //Clear/Reset controls  
                            $('#txtCompanyName').val('');
                            //$('#ddlDeptId').val("0");
                        }
                        else {
                            $('#lblMsg').text("Not Saved");
                        }
                    },
                    error: function (xhr, textStatus, error) {
                        $('#lblMsg').text("Error: " + error);
                    }
                });
            }
            else {
                $('#lblMsg').html('');
                $('#lblMsg').html(msg);
            }
        }
</script>
  <div>  
    <asp:TextBox ID="txtCompanyName" runat="server" placeholder="Enter Company Name" ></asp:TextBox>
    <asp:Label ID="lblMsg" runat="server"></asp:Label> 
    <button type="submit" onclick="SaveRecord()"/>Submit
 </div>  

C#代码隐藏:

using System.Web.Services;

[WebMethod]
public static bool InsertCompany(string Name)
{
   bool status = false;
   try
    {
        var company = new CompanyMaster
        {
            CompanyName = Name
        };
        using (var context = new DBEntities())
        {
            context.CompanyMaster.Add(company);
            context.SaveChanges();
        }
        status = true;
    }
   catch (Exception ex)
   {
       throw ex;
   }
        return status;
}

请帮我克服这个问题。非常感谢。

可以';在没有任何Postback asp.net的情况下,不能将记录插入数据库

您的代码没有问题。你能看看铬合金的控制台吗?

请求返回404或500。

你可以查看网址:

url: "/company_master.aspx/InsertCompany",

试试这个

<button  type="button" onclick="SaveRecord(); return false">Submit</button>

此外,如果有任何其他错误,请在浏览器控制台中检查

尝试使用<input type='button'>,看看它是如何工作的。提交可能与发送AJAX请求的事件冲突。

我复制了你的代码,它不需要调整就可以工作。唯一的区别是我有这个

   <form id="form1" runat="server"> 

div包含在其中。使用默认浏览器作为谷歌chrome,并使用chrome开发工具进行调试,这样可以节省时间。

相关文章: