最近在做ASP.NET Webform,有一個Button我有加入OnClickClient,本來都沒問題,結果我把這個頁面加到主版頁面以後這個按鈕變成無法送出,請問是為什麼呢?謝謝
補充:
程式碼如下<asp:Button ID="btnUpdate" runat="server" OnClick="btnUpdate_Click" OnClientClick="return confirm('確定要更新嗎?')" Text="更新" UseSubmitBehavior="false" />
然後btnUpdate_Click按鈕事件進不去
01.建議在 WEB 頁面加入以下元件, 讓 .NET 在前端產生 JavaScript 的 __doPostBack 方法。
<asp:LinkButton ID="linkDoNoThing" runat="server" Text=""></asp:LinkButton>
02.然後在 WEB 頁面加入此 SCRIPT。
<script type="text/javascript">
function GO_UPDATE(arg) {
if (confirm("確定要更新嗎?")) {
__doPostBack("GO_UPDATE", arg);
}
}
</script>
<asp:Button ID="btnUpdate" runat="server" OnClientClick="GO_UPDATE('5')" Text="更新" UseSubmitBehavior="false" />
03.最後,在 CS 端加入語法 於 Page_Load 事件...
protected void Page_Load(object sender, EventArgs e)
{
string postbackCommand = string.Format("{0}", Request.Params.Get("__EVENTTARGET"));
string postbackArgs = string.Format("{0}", Request.Params.Get("__EVENTARGUMENT"));
if (!this.Page.IsPostBack)
{
}
else
{
if (base.postbackCommand == "GO_UPDATE")
{
this.UpdateData(postbackArgs);
}
}
}
private void UpdateData(string id)
{
// 請將原本 btnUpdate_Click 的程式碼貼到這裡,還可以帶參數。
}
希望可以幫到樓主,我也是新手,互相幫忙,祝樓主能早日解決問題。