【问题标题】:call OnClientClick and Onclick together in c# Button Eventc#按钮事件中一起调用OnClientClick和Onclick
【发布时间】:2016-01-09 19:35:56
【问题描述】:

我有一个 Asp.Net c# 应用程序,其中在 mAsterpage 上有注销按钮。

我正在尝试在单击注销时提醒确认窗口。如果我选择是,那么我会将其重定向到登录页面。

所以我在下面尝试过。 OnClient 点击我在下面调用的 JavaScript 函数。

   <script type = "text/javascript">
    function Confirm() {
        var confirm_value = document.createElement("INPUT");
        confirm_value.type = "hidden";
        confirm_value.name = "confirm_value";
        if (confirm("Do you want to save data?")) {
            confirm_value.value = "Yes";
        } else {
            confirm_value.value = "No";
        }
        document.forms[0].appendChild(confirm_value);
    }
</script>

点击按钮我已经写了下面的代码。

         protected void ImgbtnLogOut_Click(object sender, ImageClickEventArgs e)
    {
        try
        {
            string confirmValue = Request.Form["confirm_value"];
            if (confirmValue == "Yes")
            {
                Session.Clear();
                Session.Abandon();
                Response.Redirect(ConfigurationManager.AppSettings["LogoutURL"].ToString());
                //Server.Transfer(ConfigurationManager.AppSettings["LogoutURL"].ToString());
            }
            else
            {
                //Do Nothing
            }
        }
        catch (Exception ex)
        {
        }
        finally
        {
        }
    }

我收到一个错误无法评估表达式,代码已优化....下一行出现错误。并且页面没有被重定向到所需的页面。

                Response.Redirect(ConfigurationManager.AppSettings["LogoutURL"].ToString());

任何人都可以请建议,我怎样才能做到这一点。

【问题讨论】:

  • 你试过移动你的 Session.clear();和 Session.Abandon();退出页面(即重定向后)?
  • 是的,我试过了。但结果相同。

标签: c# javascript asp.net session


【解决方案1】:

此确认框可帮助您通过 Ajax 获得正确响应。

获取确认值的java脚本代码。

<script type="text/javascript">
        function Confirm() {
            var confirm_value = document.createElement("INPUT");
            confirm_value.type = "hidden";
            confirm_value.name = "confirm_value";
            if (confirm("Do you want to proceed continue ?")) {
                confirm_value.value = "Yes";
            } else {
                confirm_value.value = "No";
            }
            document.forms[0].appendChild(confirm_value);
        }
    </script>

关于获取 exect 数据的 C# 代码。

string confirmValue = Request.Form["confirm_value"];
          string[] Value_Confirm = confirmValue.Split(',');
          if (Value_Confirm[Value_Confirm.Length-1] == "Yes")
          {}

或在这里查看:http://www.codeproject.com/Answers/1070495/Ask-yes-no-cancel-window-in-csharp#answer6

【讨论】:

  • 这个例子展示了使用 JavaScript 触发确认和 C# 页面上的 Catch 确认。
  • 如果你试过喜欢 那么你需要一个返回类型的JS函数来执行C#的onclick函数。
猜你喜欢
  • 2015-11-02
  • 1970-01-01
  • 2017-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-03
  • 1970-01-01
  • 2015-04-27
相关资源
最近更新 更多