Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么IE无法关闭“上的选项卡”;取消“;点击按钮c#_Javascript_C#_.net - Fatal编程技术网

Javascript 为什么IE无法关闭“上的选项卡”;取消“;点击按钮c#

Javascript 为什么IE无法关闭“上的选项卡”;取消“;点击按钮c#,javascript,c#,.net,Javascript,C#,.net,我有这个取消按钮: <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Cancel" /> 我想单击该按钮,它将关闭当前窗口,因此在codebehind中: protected void Button1_Click(object sender, EventArgs e) { string jScript = "<script>window.cl

我有这个取消按钮:

    <asp:Button ID="Button1" runat="server"  onclick="Button1_Click" Text="Cancel" />

我想单击该按钮,它将关闭当前窗口,因此在codebehind中:

protected void Button1_Click(object sender, EventArgs e)
    {
        string jScript = "<script>window.close();</script>";
        ClientScript.RegisterClientScriptBlock(this.GetType(), "keyClientBlock", jScript);
       // Response.Write("<script>parent.close_window();</script>");
    }
受保护的无效按钮1\u单击(对象发送者,事件参数e)
{
字符串jScript=“window.close();”;
RegisterClientScriptBlock(this.GetType(),“keyClientBlock”,jScript);
//Response.Write(“parent.close_window();”);
}

但我在IE浏览器中看不到窗口选项卡关闭。这里有什么可以更正的吗?

当您可以在js/jQuery中附加到按钮单击事件时,为什么要在服务器端执行此操作

由于浏览器的安全设置,这可能不起作用,除非窗口本身是通过
window.open()
方法生成的,因此如果绝对需要,您需要使用变通方法

<script type="text/javascript">
     $('#button').click(function(e){
          e.preventDefault();
          window.open('','_self').close();
     });
</script>

<button id="button" value="close" />

$(“#按钮”)。单击(函数(e){
e、 预防默认值();
窗口。打开(“自我”)。关闭();
});
代码隐藏

protected void Button1_Click(object sender, EventArgs e)
{
string jScript = "<script>CloseWindow();</script>";
ClientScript.RegisterClientScriptBlock(this.GetType(), "keyClientBlock", jScript);
}
受保护的无效按钮1\u单击(对象发送者,事件参数e)
{
字符串jScript=“CloseWindow();”;
RegisterClientScriptBlock(this.GetType(),“keyClientBlock”,jScript);
}

我还建议您使用javascript创建一个函数,然后用代码调用它,如果您不打算在.cs-side-us-DGibs答案中执行任何操作,请尝试使用window.top.close();window.close()只有在使用window.open(..)时才起作用,所以我建议您也尝试window.open(“”,“”,“”self').close();很抱歉,我按照您所说的方式执行该按钮,但它不会正确显示。点击它也不要关闭标签。你的意思是:“在.cs端我们…”后面的代码是.cs端,上面的函数是在aspx端或UI上找到的javascript,而点击按钮则是.cs端或后面的代码
protected void Button1_Click(object sender, EventArgs e)
{
string jScript = "<script>CloseWindow();</script>";
ClientScript.RegisterClientScriptBlock(this.GetType(), "keyClientBlock", jScript);
}