将焦点设置为超链接

时间:2012-03-28 16:28:03

标签: asp.net hyperlink focus

如何将焦点设置为asp.net中的超链接?我的超链接在转发器中,我想要点击的项目具有焦点。

修改 这显示了很多缩略图。我希望点击的缩略图能够获得焦点。

<asp:Repeater ID="FileRepeater" runat="server" > 
<ItemTemplate> 
<asp:Image ID="Image" runat="server" />
<asp:HyperLink ID="HyperLink" runat="server" NavigateUrl='<%#"Default.aspx?image=" +  
Eval("Name") %>' ImageUrl='<%#"Content/Thumbnails/" + Eval("Name") %>'>  
HyperLink</asp:HyperLink>
</ItemTemplate> 
</asp:Repeater>

2 个答案:

答案 0 :(得分:0)

如果您指的是能够提交表单的ASP.NET LinkButton,则无法做到这一点。

LinkButton呈现为超链接,无法提交表单。

我发现LinkButton控件通常是不好的做法,因为这些控件使用javascript来操作,并且在禁用javascript时没有任何功能。


您最好的选择是使用ASP.NET Button,然后将其设置为超链接。

答案 1 :(得分:0)

可能有更好的方法来做到这一点。这会奏效。我把超链接包裹在一个范围内。单击超链接后,查询字符串将类似于

  Default.aspx?image=value

所以在文档加载时,我们得到参数值并应用相应跨度的样式来突出显示。

<span class='<%#Eval("Name")%>'>
    <asp:HyperLinkID="HyperLink" runat="server" NavigateUrl='<%#"Default.aspx?image="+Eval("Name")%>'
    ImageUrl='<%#"Content/Thumbnails/" + Eval("Name") %>'>HyperLink</asp:HyperLink>
</span>

<script type="text/javascript">
$(document).ready(function () {           
        var myhlspan = getURLParameter("image");
       if (myhlspan != null) {
            $("." + myhlspan).css("border","3px solid yellow");
        }
    });
    function getURLParameter(name) {
       return decodeURI((RegExp(name + '=' + '(.+?)(&|$)').exec(location.search) || [,null])[1]);
    }

</script>