Javascript 使用<;a href>;在网格视图中

Javascript 使用<;a href>;在网格视图中,javascript,asp.net,Javascript,Asp.net,我在gridview中有一个锚定标记,我使用javascript onclick弹出一个新窗口。它的工作方式和预期的一样,只是当窗口弹出时,会使父页面自动回发。我已经对此进行了研究,但找不到为什么会发生这种情况或如何解决它。下面是我的代码,第一个是我的网格,第二个是JavaCScript函数 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowSorting="Tru

我在gridview中有一个锚定标记,我使用javascript onclick弹出一个新窗口。它的工作方式和预期的一样,只是当窗口弹出时,会使父页面自动回发。我已经对此进行了研究,但找不到为什么会发生这种情况或如何解决它。下面是我的代码,第一个是我的网格,第二个是JavaCScript函数

  <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        AllowSorting="True" AllowPaging="True" PageSize="20" BackColor="White" 
        BorderColor="#003366" BorderStyle="None" BorderWidth="1px" CellPadding="3" 
        GridLines="Vertical"  Font-Names="Verdana" Font-Size="Small">
        <AlternatingRowStyle BackColor="#D9ECFF" BorderColor="#003366" />
        <Columns>

             <asp:TemplateField HeaderText="SELECT">
                <ItemTemplate>
                   <asp:CheckBox ID="CheckBox1" runat="server"/>
                </ItemTemplate>
            </asp:TemplateField>

                <asp:TemplateField>
                    <ItemTemplate>
                        <a href="#" onclick="clickMe('<%# Eval("ICAO") %>')" target="_top">Test</a>
                    </ItemTemplate>
                </asp:TemplateField>
            <asp:BoundField DataField="ICAO" HeaderText="ICAO" SortExpression="ICAO" />
            <asp:BoundField DataField="IATA" HeaderText="IATA" SortExpression="IATA" />
            <asp:BoundField DataField="AIRPORT_NAME" HeaderText="AIRPORT NAME" SortExpression="AIRPORT_NAME" />
            <asp:BoundField DataField="CITY" HeaderText="CITY" SortExpression="CITY" />
            <asp:BoundField DataField="COUNTRY" HeaderText="COUNTRY" SortExpression="COUNTRY" />
            <asp:BoundField DataField="REVISED_DATE" HeaderText="REVISED DATE" SortExpression="REVISED_DATE" />
            <asp:BoundField DataField="EMAIL_DATE" HeaderText="EMAIL DATE" SortExpression="EMAIL_DATE" />          
        </Columns>

        <FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
        <HeaderStyle BackColor="#465c71" Font-Bold="True" ForeColor="#F7F7F7" />
        <PagerSettings FirstPageText="First" LastPageText="Last" 
            Mode="NextPreviousFirstLast" NextPageText="Next" Position="Top" 
            PreviousPageText="Previous" />
        <PagerStyle BackColor="#F7F7F7" ForeColor="#465c71" HorizontalAlign="Center" />
        <RowStyle BackColor="#F7F7F7" ForeColor="#4A3C8C" />
        <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
        <SortedAscendingCellStyle BackColor="#F4F4FD" />
        <SortedAscendingHeaderStyle BackColor="#5A4C9D" />
        <SortedDescendingCellStyle BackColor="#D8D8F0" />
        <SortedDescendingHeaderStyle BackColor="#3E3277" />

    </asp:GridView>

    <script language="javascript" type="text/javascript">
    function clickMe(icao) {
        targetUrl = "login.aspx?icao=" + icao
        window.open(targetUrl, 'Rep_Search', 'toolbar=no, directories=no,    
        location=no,status=yes, menubar=no, resizable=no, scrollbars=yes, height=300, 
       width=400'); return false;
    }
    </script>

功能clickMe(国际民航组织){
targetUrl=“login.aspx?icao=“+icao”
打开(targetUrl,'Rep_Search','toolbar=no,directories=no,
位置=否,状态=是,菜单栏=否,可调整大小=否,滚动条=是,高度=300,
宽度=400’;返回false;
}
您的“onclick”属性应该是
onclick='returnclickme(…)'
。您的处理程序返回的是
false
,但属性中的代码基本上是real处理程序,它根本没有
返回

另外,作为一些建议,发布尽可能少的代码是一个好主意。它使人们更容易浏览问题并寻找简单的问题。当然,过多地缩小代码范围是不好的,因为很容易对导致问题的原因做出错误的假设