打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
javascript – 如何从asp.net中的js函数调用c#函数?

我正在使用asp.net和c#开发我的第一个网站.
如何从asp.net中的js函数调用c#函数?我想将表单数据插入到sql数据库中.

C#(add_project.aspx.cs):

using System.Web.Services;public partial class add_project : System.Web.UI.Page{[WebMethod]    public static void InsertIntoDatabase(string projectname, string piname)    {        Console.WriteLine("hello");// this doesn't appear which mean it doesn't enter this function        SqlConnection conn = new SqlConnection("Data Source=servername;Initial Catalog=databasename;Integrated Security=SSPI");        string sql = "INSERT INTO Projects (project_name, principal_investigator) VALUES (@project_name,@pi_name)";        try        {            conn.Open();            SqlCommand cmd = new SqlCommand(sql, conn);            SqlParameter[] param = new SqlParameter[2];            param[0] = new SqlParameter("@project_name", System.Data.SqlDbType.VarChar, 50);            param[1] = new SqlParameter("@principal_investigator", System.Data.SqlDbType.VarChar, 50);        param[0].Value = projectname;            param[1].Value = piname;            for (int i = 0; i < param.Length; i  )            {                cmd.Parameters.Add(param[i]);            }            cmd.ExecuteNonQuery();        }        catch (System.Data.SqlClient.SqlException ex)        {            string msg = "Insert Error:";            msg  = ex.Message;            throw new Exception(msg);        }        finally        {            conn.Close();        }    }}

asp文件中的js(add_project.aspx):

<script>  function doSomething() {      var $projectname = $("#project_name").val();      var $piname = $("#pi_name").val();      alert($piname);    // This alert appear      $.ajax({          type: "POST",          url: 'add_project.aspx/InsertIntoDatabase',          data: "{'projectname':'"   $projectname   "', 'piname':'"   $piname   "' }", //Pass the parameter names and values          contentType: "application/json; charset=utf-8",          dataType: "json",          success: function (msg) {              alert('success');          },          error: function (e) {              alert('error');       // this msg appear          }      });         }

aspx文件中的表单(add_project.aspx):

    <form class="form-horizontal form-label-left" id="add_project_form" runat="server" onsubmit="doSomething();">    <div id="wizard" class="form_wizard wizard_horizontal"><!-- Project Name -->                          <div class="form-group">                            <label class="control-label col-md-3 col-sm-3 col-xs-12" for="project_name">Project Name <span class="required">*</span>                            </label>                            <div class="col-md-6 col-sm-6 col-xs-12">                              <asp:TextBox id="project_name" required="required" class="form-control col-md-7 col-xs-12" runat="server"></asp:TextBox>                            </div>                          </div><!-- PI name -->                          <div class="form-group">                            <label class="control-label col-md-3 col-sm-3 col-xs-12" for="pi_name">PI Name <span class="required">*</span>                            </label>                            <div class="col-md-6 col-sm-6 col-xs-12">                              <asp:TextBox id="pi_name" required="required" class="form-control col-md-7 col-xs-12" runat="server"></asp:TextBox>                            </div>                          </div>    </div></form>

我无权访问表单的提交按钮(因为我使用bootstrap模板).

谢谢

解:
我通过将[WebMethod]放在c#函数之前来解决问题
另外,我在insert语句中有错误语法.
谢谢@Pawan和所有人的帮助.

解决方法:

c#方法应该是一个web方法.

[WebMethod]

这是你的c#方法

你需要先将system.web.services导入你的代码,

using System.Web.Services;

并将js函数写入表单提交事件(如果您无法访问提交按钮)

在表单中内联写onsubmit =“yourfun()”

或者如果你使用jquery

$("#form-id").submit(function(){    your function;});
来源:https://www.icode9.com/content-1-303001.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
从 Bootstrap优站精选 学习得出总结
XS Project
bootstrap栅栏系统css中的col
C#面试题和答案
全局 CSS 样式 · Bootstrap 中文文档
MVC5 + EF6 + Bootstrap3 (7) Bootstrap的栅格系统
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服