listview中的锚标记的href没有被触发

时间:2014-06-13 12:07:53

标签: asp.net listview anchor

我有一个listview,其中包含一个标签,它也包含一个href,但是href不起作用。这是代码

<asp:ListView ID="listsearch" runat="server" ItemPlaceholderID="itemsearch">
 <LayoutTemplate>
  <ul class="ada"><asp:PlaceHolder ID="itemsearch" runat="server"/></ul>
    </LayoutTemplate>
    <ItemTemplate>
      <li>


      <asp:LinkButton ID="LinkButton1" runat="server" PostBackUrl='<%# String.Format("https://www.google.co.in") %> '  Text="Ssdsd"/>
       </li>
</ItemTemplate>
</asp:ListView>

HTML输出:

<a id="ctl00_ContentPlaceHolder1_listsearch_ctrl0_LinkButton1" href='javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ContentPlaceHolder1$listsearch$ctrl0$LinkButton1"‌​, "", false, "", "google.co.in";, false, true))' style="border-width: 1px;">Ssdsd</a>

1 个答案:

答案 0 :(得分:0)

<asp:LinkButton>控件用于模拟<asp:button>的行为,但是在超链接的味道中。如果您不需要对点击事件进行服务器处理,请更好地使用<asp:hyperlink>或仅使用非服务器html <a>标记:

我猜你在传递给ListView的DataSource中有像Url这样的属性,所以你替换了你的LinkBut​​ton:

<asp:HyperLink ID="HyperLink1" runat="server"  NavigateUrl='<%# Eval("myUrl") %>'
               Target="_blank"><%# Eval("myUrl") %></asp:HyperLink>

或更好:

   <a href="<%# Eval("MyUrl") %>" target="_blank"><%# Eval("MyUrl") %></a>

并在新标签页中打开网址!