Gridview超链接无法正常工作

时间:2016-08-15 16:19:47

标签: c# asp.net gridview

我正在尝试通过向导插入超链接字段。但是当我运行应用程序时,我得到带有蓝色链接的文本,但它不可点击。

这是我的代码:

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="stepID" DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None">
    <AlternatingRowStyle BackColor="White" />
    <Columns>
        <asp:HyperLinkField DataNavigateUrlFields="stepID,stepName,stepStartdate,stepEndDate,stageID" DataNavigateUrlFormatString="~/Supervisor/editSteps.aspx?stepID={0}&amp;stepName={1}&amp;Sdate={2}&amp;EDate={3}&amp;stgD={4}" DataTextField="stepName" />
        <asp:BoundField DataField="stageID" HeaderText="stageID" SortExpression="stageID" />
        <asp:BoundField DataField="stepStartdate" HeaderText="stepStartdate" SortExpression="stepStartdate" />
        <asp:BoundField DataField="stepEndDate" HeaderText="stepEndDate" SortExpression="stepEndDate" />
    </Columns>
    <EditRowStyle BackColor="#2461BF" />
    <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
    <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
    <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
    <RowStyle BackColor="#EFF3FB" />
    <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
    <SortedAscendingCellStyle BackColor="#F5F7FB" />
    <SortedAscendingHeaderStyle BackColor="#6D95E1" />
    <SortedDescendingCellStyle BackColor="#E9EBEF" />
    <SortedDescendingHeaderStyle BackColor="#4870BE" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:DefaultConnection %>" SelectCommand="SELECT * FROM [tblsteps] WHERE ([stageID] = @stageID)">
    <SelectParameters>
        <asp:QueryStringParameter Name="stageID" QueryStringField="StgID" Type="Int32" />
    </SelectParameters>
</asp:SqlDataSource>

运行此应用程序时没有错误或警告。

2 个答案:

答案 0 :(得分:0)

您的代码看起来很好,我已经在我这边测试了它,并且超链接正常工作。我怀疑通过javascript或CSS禁用了超链接。

您可以通过暂时从相关页面中删除所有CSS和javascript引用来确认这一点。

如果它的CSS禁用了超链接,您可以按照以下步骤在浏览器中运行网页时检查超链接的样式:

  1. 在Gooogle Chrome中运行您的网页
  2. Ctrl+Shift+I以显示HTML检查控制台
  3. 在HTML(<a>元素)
  4. 中找到超链接
  5. 检查禁用该元素的样式规则并将其从CSS文件中删除:
  6. Inspecting HTML in Google Chrome

答案 1 :(得分:0)

在您拥有网页的IIS和page.aspx代码上添加一个虚拟文档文件夹: DataNavigateUrlFormatString="http://webserver/{0}" DataNavigateUrlFields="FieldName"

就这样。出售巴托。