如何从Code-Behind调用IF条件下的确认框?

时间:2013-05-06 06:55:51

标签: c# javascript asp.net

我正在使用LinkBut​​ton和DropDown。

当我点击LinkBut​​ton时,会出现DropDown。

选择DropDown值后,我想要一个从JavaScript调用的确认框,以确保该值已更改。

我在第二个if条件下调用此脚本,但它无效。

确认后我想更改其他值并退出条件。

protected void lnkbtnSave_Click(object sender, EventArgs e)
{
    if ((ddlHiringManager.SelectedItem != null &&
        (ddlHiringManager.SelectedItem.Text != lblHiringManager.Text)) &&
        (Convert.ToInt32(ddlHiringManager.SelectedValue)) != -1)
    {

        if (ClientScript.RegisterStartupScript(typeof(Page), "Confirm", "<script type='text/javascript'>Confirm('Are you sure you want to change Hiring Manager for this requirement.');</script>"))
        {
            ClsClientManager objClientManager = new ClsClientManager();

            if (objClientManager.UpdateHRManagerByReqID(Convert.ToInt32(hdnReqId.Value), Convert.ToInt32(ddlHiringManager.SelectedValue)) > 0)
            {
                lblShowHiringManager.Text = ddlHiringManager.SelectedItem.Text;
            } 
        }      
    }
    else
    {
        ClientScript.RegisterStartupScript(typeof(Page), "SymbolError", "<script type='text/javascript'>alert('Please Select Hiring Manager !');</script>");            
    }
}

3 个答案:

答案 0 :(得分:1)

您无法使用RegisterStartupScript方法的结果。

更改LinkBut​​ton的ASPX页面代码,如下所示

<asp:LinkButton ID="lnkbtnSave" runat="server" OnClick="lnkbtnSave_Click"
    OnClientClick="javascript: return confirm('Are you sure you want to change Hiring Manager for this requirement.');">Save</asp:LinkButton>

我添加了客户端点击事件。

点击LinkBut​​ton后,您将看到确认框。只有在确认框中单击OK时,页面才会回发。

答案 1 :(得分:-1)

请参阅此代码段。在下拉列表中选择索引更改事件

 protected void ddlTest_SelectedIndexChanged(object sender, EventArgs e)
{
    string str = "Are you sure, you want to upload leave ?";
    this.ClientScript.RegisterStartupScript(typeof(Page), "Popup", "ConfirmApproval('" + str + "');", true);
}

对于Client Side声明该方法。

<script type="text/javascript">
    function ConfirmApproval(objMsg) {
        if (confirm(objMsg)) {
            $('#divUploadLeave').fadeTo('slow', .6);
            return true;
        } else {

            $('#divUploadLeave').fadeTo('slow', 1);
            return false;
        }

    }

希望它可以帮助你。

如果您想要客户端的所有内容,请告诉我。

答案 2 :(得分:-1)

请在Confirm之前添加退货,以解决您的问题。

 **if (ClientScript.RegisterStartupScript(typeof(Page), "Confirm", "<script type='text/javascript'>return Confirm('Are you sure you want to change Hiring Manager for this requirement.');</script>"))**