Asp.net 通过ajax使用ado.net插入数据

Asp.net 通过ajax使用ado.net插入数据,asp.net,ajax,Asp.net,Ajax,我很难找到这个问题。我通过ado.net插入产品记录,效果很好。现在我试着用ajax做得更好。但我遇到了麻烦,因为当我通过ajax单击按钮时,代码从未运行预期要运行的函数。所以我需要你的帮助。谢谢代码如下: //这是我的home.aspx页面 如果是用代码编写的,ajax调用的方法应该是静态的。谢谢。。。顺便说一下,它必须将数据作为参数传递。我们是否可以不发送数据,只需在代码隐藏中访问它,如:textbox1.text。我已经试过了。当我将方法设置为静态时,它会给我一个错误。为什么它不允许我访

我很难找到这个问题。我通过ado.net插入产品记录,效果很好。现在我试着用ajax做得更好。但我遇到了麻烦,因为当我通过ajax单击按钮时,代码从未运行预期要运行的函数。所以我需要你的帮助。谢谢代码如下:

//这是我的home.aspx页面


如果是用代码编写的,ajax调用的方法应该是静态的。谢谢。。。顺便说一下,它必须将数据作为参数传递。我们是否可以不发送数据,只需在代码隐藏中访问它,如:textbox1.text。我已经试过了。当我将方法设置为静态时,它会给我一个错误。为什么它不允许我访问控制w.r.t到他们的id。谢谢你,谢谢你。。。我现在会经常打扰你,因为我是asp.net和ajax的新手。。。还有一件事,我如何传递通过ajax上传的文件并对其执行操作,如上面的代码所示,还是为其创建一个单独的方法。因为仅仅传递文件名不允许像hasfile这样的操作。。如果您想通过ajax传递数据,而不是传递数据和发布文件,则不需要thanksData。您需要asp:ajaxtoolkit或一些jquery插件。
   $(document).ready(function () {

       $("#submit").click(function () {


           alert("you clicked");

           $.ajax({

               type: "POST",
               contentType: "application/json", 
               url: "home.aspx/insert",
               dataType: "json",
              // data: "{'Name':'" + document.getElementById('name').value + "'}",
               data:"{}",
                //async: false,
                success: function (response) {
                   alert("User has been added successfully.");
                   window.location.reload();

               }

           });




       })


   });

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

<div>
      <table>

          <tr>

              <td><label>Product Name</label></td>
              <td> <asp:TextBox  runat="server" id="name"></asp:TextBox></td>
          </tr>

          <tr>
              <td><label>Product Code</label></td>
              <td><asp:TextBox  runat="server" id="code"></asp:TextBox></td>
          </tr>

           <tr>

              <td><label>Product Category</label></td>
              <td><asp:DropDownList ID="DropDownList1"  runat="server">
                  <asp:ListItem>Gadgets</asp:ListItem>
                  <asp:ListItem>Vehicles</asp:ListItem>
                  <asp:ListItem>Garments</asp:ListItem>
                  <asp:ListItem>Eatables</asp:ListItem>
                  <asp:ListItem>Furniture</asp:ListItem>
                  </asp:DropDownList></td>


           </tr>

            <tr>

              <td><label>Expiry date</label></td>
              <td><asp:TextBox  runat="server" TextMode="Date" id="dt"></asp:TextBox></td>
          </tr>


           <tr>
              <td><label>Product price</label></td>
              <td><asp:TextBox  runat="server" id="price"></asp:TextBox></td>
          </tr>

          <tr>
              <td><label>Product Image</label></td>
              <td> <asp:FileUpload ID="file_image"   runat="server" /></td>
              <td> </td>
              <td><asp:Label runat="server" id="showtext"></asp:Label></td>
          </tr>

         <tr></tr>
         <tr></tr>
          <tr>
             <td></td>
              <%--<asp:Button runat="server" OnClick="submit" Text="Submit" BackColor="White" Width="100px" />--%>

              <td> <input type="button"  style=" width:100px;" value="Submit" id="submit" /> </td>

          </tr>
      </table>
</div>
    <asp:Label ID="res" runat="server"></asp:Label>
</form>
 public void insert()
    {
        if (file_image.HasFile)
        {
            string ext = System.IO.Path.GetExtension(file_image.FileName);
            if (!ext.Equals(".jpg"))
            {

                showtext.Text = "Please select correct  file format i.e jpg or jpeg";
                showtext.ForeColor = System.Drawing.Color.Purple;

            }
            else
            {
                file_image.SaveAs(Server.MapPath("~/Uploads/" + file_image.FileName));
                showtext.Text = "File uploaded";
                showtext.ForeColor = System.Drawing.Color.Green;






                productclass pc = new productclass();
                pc.Pr_name = name.Text;
                pc.Code = code.Text;
                pc.Category = DropDownList1.SelectedValue;
                pc.Expiry = Convert.ToDateTime(dt.Text);
                pc.Price = Convert.ToInt32(price.Text);
                pc.Pr_image = file_image.FileName;

                dalinsert di = new dalinsert();
                bool flag = di.insert(pc);

                if (flag.Equals(true))
                {

                    res.Text = "data inserted";
                    //Thread.Sleep(10000);
                   // Response.Redirect("home.aspx");

                }

                else
                {

                    res.Text = "issue in inserting data";

                }        






            }



        }


        else
        {

            showtext.Text = "Please select file";
            showtext.ForeColor = System.Drawing.Color.Red;
        }

    }