0

我有提交按钮。单击它时,我必须从数据库中检查特定字段的值,然后弹出确认窗口,然后根据是或否允许/禁止保存。我该怎么做。在使用确认 JS 函数时,它通过了语句和无论如何运行保存过程。

我的按钮事件

        protected void btnSubmit_Click(object sender, EventArgs e) 
{

                    string ListExam = string.Empty;
                    DataTable dt = BussObjGoalCert.CheckPlannedStatus(custObjGoalCert);
                    if (dt.Rows.Count != 0)
                    {
                        for (int i = 0; i < (dt.Rows.Count); i++)
                        {
                            ListExam = ListExam + (dt.Rows[i]["MultipleExamPlanned"]) + ";";
                        }
                        lblExamMultiple.Text = ListExam;
                        string myScript2 = "confirm('Unselected exam planned under other certification will also be unplanned.Do you wish to continue?');";
                        ClientScript.RegisterStartupScript(this.GetType(), "myScript", "confirm('Unselected exam planned under other certification will also be unplanned.Do you wish to continue?');", true);

                    }
                    Result = BussObjGoalCert.InsertGoalCertification(custObjGoalCert);
}

所以我正在做的是从后端检查一些数据,然后尝试有条件地调用确认函数。它被调用,但随后插入语句也会运行,而与人选择的内容无关。如何在 JS 函数中完成数据库检查。我需要在后面的代码中完成。但允许/禁止完全保存。这是如何完成的。我没有按照答案中的建议使用 OnCLientCLick。

4

4 回答 4

1

尝试这个

如果你有asp按钮

<asp:Button runat="server" ID="btn" 
OnClientClick="return confirm('Are you surely want to submit (server button) ?');"
Text="Server button" />

如果您有提交 HTML 按钮

<input type="submit" 
onclick="return confirm('Are you surely want to submit (client button) ?');"
value="Client button" />

更新

如果你想这样做

  1. 执行一些服务器端代码
  2. 要求用户确认
  3. 在用户确认后执行更多服务器端代码

然后应该做以下

  1. 创建网络服务。
  2. 使用 Jquery 或 Javascript 通过该 Web 服务执行您的服务器端代码。
  3. 在您的 Web 服务请求的完成(成功)事件上显示确认框。
  4. 如果用户单击YES执行服务器端回调或执行另一个 Web 服务请求以执行要在用户确认后执行的代码。
于 2012-11-05T08:57:58.940 回答
0

您的问题有一个解决方案。请按照以下步骤操作:

1.)在按钮的 OnClientclick 事件调用pagemethod并在其中传递要在数据库中检查的值。

2.) pagemethod用于在客户端调用服务器端静态方法并返回结果。

3.)如果数据存在则返回布尔值,如果数据存在则返回false。

4.)当标志为真时,如果确认为真,则显示确认框,然后再次调用服务器方法并更新信息,然后将真返回给 OnClientClick 事件。

或者

如果确认为假,则向 OnClientClick 事件返回假。

您可以在这里查看我的文章。希望这对您有所帮助。如果您需要更多详细信息,请告诉我。

于 2012-11-05T10:22:17.257 回答
0
try this

 <asp:Button ID="btnsave" runat="server" Text="Save" OnClientClick="javascript:return Checkdelete();"/>


function Checkdelete() {
return confirm("Are you sure you want to Save the records");
}
于 2012-11-05T12:59:45.517 回答
0

我认为您正在尝试提交按钮上的 onclick 事件。在表单元素中尝试 onsubmit="return confirm('Are You sure to submit')"

于 2012-11-05T08:58:07.903 回答