从 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)调用服务器端函数?