从 html5 按钮 onclick 事件调用服务器端方法

Posted

技术标签:

【中文标题】从 html5 按钮 onclick 事件调用服务器端方法【英文标题】:call serverside method from html5 button onclick event 【发布时间】:2012-02-13 21:15:25 【问题描述】:

我做了一个测试应用程序,其中控件是 html5 控件。我有 2 个文本框和一个 html5 按钮。我想在html5按钮上触发onclick事件,通过onclick事件调用的方法在服务器端。

我试过了,但它不起作用。谁能帮我从 html5 按钮调用服务器端方法。我正在发布我的代码。

//clientside code
<form id="form1" runat="server">
    <div>
        First name:<input type="search" name="searchfield" placeholder="enter your name"
            autofocus="on" required="required" pattern="[A-z]" />
        E-mail:
        <input type="email" name="emailfield" placeholder="enter emailid" />

        <button onclick="btnSave_click" value="Click to Save" id="btnSave" runat="server" autofocus="autofocus" formtarget="_parent">
            Click to Save</button>
    </div>
</form>

// server side code
protected void btnSave_Click(object sender, EventArgs e)

    string name = Request.Form["searchfield"];
    string emailid = Request.Form["emailfield"];
    string dob = Request.Form["bday"];

    SqlConnection cn = new SqlConnection();
    cn.ConnectionString = "Data Source=CP1106\\SQLEXPRESS;Initial Catalog=Testdb;User ID=sa;Password=pwd";

    cn.Open();

    string query = "INSERT INTO TestTable(name, email) VALUES(@name, @email)";

    SqlCommand cmd = new SqlCommand(query,cn);
    cmd.Parameters.Add("@name", name);
    cmd.Parameters.Add("@email", emailid);
    // cmd.Parameters.Add("@bday", dob);

    cmd.ExecuteNonQuery();

    cn.Close();
    BindGrid();

【问题讨论】:

如果解决了问题,请标记答案。 【参考方案1】:

请使用:onserverclick="btnSave_click"

【讨论】:

【参考方案2】:

使用onserverclick="btnSave_click" 而不是onclick="btnSave_click"

【讨论】:

【参考方案3】:

您可以使用以下代码。

<button onserverclick="btnSave_click" value="Click to Save" id="btnSave" 
  runat="server" autofocus="autofocus" formtarget="_parent">Click to Save
</button>

【讨论】:

【参考方案4】:

我认为您在服务器端提供了 btnSave_Click,在客户端提供了 btnSave_click

【讨论】:

以上是关于从 html5 按钮 onclick 事件调用服务器端方法的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Node.js 中从客户端(例如 html 按钮 onclick)调用服务器端函数?

php怎么给按钮添加事件

HTML5 onclick 按钮不起作用

Flask - 在按钮 OnClick 事件上调用 python 函数

onClick事件处理以调用该特定按钮上的函数

ASP.net button 按钮onclick事件无法调用后台方法