Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.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
C# 链接按钮:";右键单击并在“新建”选项卡中打开;不起作用_C#_Asp.net_Vb.net_C# 4.0 - Fatal编程技术网

C# 链接按钮:";右键单击并在“新建”选项卡中打开;不起作用

C# 链接按钮:";右键单击并在“新建”选项卡中打开;不起作用,c#,asp.net,vb.net,c#-4.0,C#,Asp.net,Vb.net,C# 4.0,我试图右键点击一个链接按钮,然后在一个新的选项卡中打开它,或者单独的窗口页面什么也不显示。我找到了一些使用超链接按钮的解决方案,因为它具有将目标设置为“\u blank”的属性,但LinkButton没有任何目标属性 我想使用LinkButton而不是HyperlinkButton,这只是因为我无法在hyperlink按钮上设置命令参数或命令名称,并且无法在其上触发事件 <asp:LinkButton ID="lnkHeadingHindi" Text='<%#Patrika.Com

我试图右键点击一个链接按钮,然后在一个新的选项卡中打开它,或者单独的窗口页面什么也不显示。我找到了一些使用超链接按钮的解决方案,因为它具有将目标设置为“\u blank”的属性,但LinkButton没有任何目标属性

我想使用LinkButton而不是HyperlinkButton,这只是因为我无法在hyperlink按钮上设置命令参数或命令名称,并且无法在其上触发事件

<asp:LinkButton ID="lnkHeadingHindi" Text='<%#Patrika.Common.ConvertNews(Eval("strMainHeadingHin").ToString())%>' CommandArgument='<%#Eval("intNewsId") %>' runat="server"></asp:LinkButton>

如果有人有解决方案,如果有任何问题,请告诉我,那就太好了

谢谢

使用LinkButton控件在网页上创建超链接样式按钮。LinkButton控件具有与超链接控件相同的外观,但具有与按钮控件相同的功能。如果单击控件时要链接到另一个网页,请考虑使用超链接控件。

由于这实际上不是在标准意义上执行链接,因此控件上没有Target属性(HyperLink控件确实有一个目标)-它试图从文本链接执行回发到服务器

根据您试图做的事情,您可以:

1) 使用超链接控件,并设置目标属性

2) 为 这将在正确的位置打开一个新窗口

3) 在处理回发的代码中,添加一些JavaScript以在PageLoad上启动,从而在正确的位置打开一个新窗口

如果您愿意,单击链接按钮,然后打开新窗口

请参见

使用LinkButton控件在网页上创建超链接样式按钮。LinkButton控件具有与超链接控件相同的外观,但具有与按钮控件相同的功能。如果单击控件时要链接到另一个网页,请考虑使用超链接控件。

由于这实际上不是在标准意义上执行链接,因此控件上没有Target属性(HyperLink控件确实有一个目标)-它试图从文本链接执行回发到服务器

根据您试图做的事情,您可以:

1) 使用超链接控件,并设置目标属性

2) 为 这将在正确的位置打开一个新窗口

3) 在处理回发的代码中,添加一些JavaScript以在PageLoad上启动,从而在正确的位置打开一个新窗口

如果您愿意,单击链接按钮,然后打开新窗口


请参见像这样插入基本标记

 <head>
    <base target="_blank" />
    </head>

像这样插入基本标记

 <head>
    <base target="_blank" />
    </head>

如果要使用超链接将某些信息传递到页面,请使用查询字符串将其传递到url中

<asp:HyperLink id="hyperlink1" 
                  NavigateUrl="~/MyPage.aspx?intNewsId=10"
                  Text="ClickMe"
                  Target="_blank"
                  runat="server"/>    

如果要使用超链接将某些信息传递到页面,请使用查询字符串将其传递到url中

<asp:HyperLink id="hyperlink1" 
                  NavigateUrl="~/MyPage.aspx?intNewsId=10"
                  Text="ClickMe"
                  Target="_blank"
                  runat="server"/>    

你不能两全其美,你必须在以下两者之间做出选择:

1) linkbutton在当前页面中执行某些代码

2) 在新窗口中打开另一页的超链接

<a href="urlOfThePage" target="_blank" >Click me</a>
我猜你想让linkbutton在新页面中执行一些代码,但那是不可能的

或者如果你喜欢使用。愤怒标签

只需将href设置为适当的url并将target属性设置为_blank即可呈现锚点,它将在新窗口中打开url

<a href="urlOfThePage" target="_blank" >Click me</a>

你不能两全其美,你必须在以下两者之间做出选择:

1) linkbutton在当前页面中执行某些代码

2) 在新窗口中打开另一页的超链接

<a href="urlOfThePage" target="_blank" >Click me</a>
我猜你想让linkbutton在新页面中执行一些代码,但那是不可能的

或者如果你喜欢使用。愤怒标签

只需将href设置为适当的url并将target属性设置为_blank即可呈现锚点,它将在新窗口中打开url

<a href="urlOfThePage" target="_blank" >Click me</a>

根据已接受的答案,如果您想执行POST(如
链接按钮
执行),但在新窗口中打开结果,则需要将
target=“\u blank”
添加到页面上的表单,而不是链接本身

显然,在最初呈现页面时不希望这样做,因为导致回发的所有内容都将在新窗口中打开

相反,请尝试将以下属性添加到
LinkButton

OnClientClick="$('form').attr('target', 'blank')"
这将在通过单击链接发回表单之前动态设置表单属性

请注意,这并没有提供所需的右键单击功能,但左键单击可以在新窗口中打开

如果您没有访问JQuery的权限,则需要执行以下操作

protected void Page_PreRender(object se, EventArgs e)
{
    this.Page.Form.ID = "someUniqueID"; // unless your form already has an ID
    yourLinkButton.OnClientClick =
        "document.getElementById('" +
        this.Page.Form.ClientID +
        "').setAttribute('target', '_blank')";
}

根据已接受的答案,如果您希望执行POST(如
LinkButton
执行),但在新窗口中打开结果,则需要将
target=“\u blank”
添加到页面上的表单,而不是链接本身

显然,在最初呈现页面时不希望这样做,因为导致回发的所有内容都将在新窗口中打开

相反,请尝试将以下属性添加到
LinkButton

OnClientClick="$('form').attr('target', 'blank')"
这将在通过单击链接发回表单之前动态设置表单属性

请注意,这并没有提供所需的右键单击功能,但左键单击可以在新窗口中打开

如果您没有访问JQuery的权限,则需要执行以下操作

protected void Page_PreRender(object se, EventArgs e)
{
    this.Page.Form.ID = "someUniqueID"; // unless your form already has an ID
    yourLinkButton.OnClientClick =
        "document.getElementById('" +
        this.Page.Form.ClientID +
        "').setAttribute('target', '_blank')";
}
这不起作用(至少对我来说)-渲染锚点上的引用是
javascript:\uu doPostBack('ctl00$FeaturedContent$ctl00','')
,因此您最终尝试在新窗口中调用一个不存在的函数。这不起作用(至少对我来说)-渲染锚点上的引用是
javascript:\uu doPostBack('ctl00$FeaturedContent$ctl00','')
因此您最终尝试调用