0

我已经在 TemplateField 中的 GridView 中添加了一个 HyperLink 控件,我希望它将用户重定向到特定页面,并从所选行传递 ID。以下工作正常:

<asp:HyperLink ID="hlViewBasketItem" runat="server" Text="Detail"
   NavigateUrl='<%# Eval("BasketItemID", "/BasketItemDetail.aspx?popUp=true&id={0}") %>'>
</asp:HyperLink>

ID 评估正确;例如:“/BasketItemDetail.aspx?popUp=true&id=52”

我遇到的问题是我需要调用 Javascript 函数来控制我的页面的显示(以便它出现在弹出窗口中)。我尝试了以下方法:

<asp:HyperLink ID="hlViewBasketItem" runat="server" Text="Detail"
    NavigateUrl='<%# Eval("BasketItemID", "javascript:dnnModal.show('/BasketItemDetail.aspx?bid={0}&popUp=true',false,550,950,false)") %>'>
</asp:HyperLink>

...但我收到“服务器标签格式不正确”错误。

有没有办法做到这一点?

4

2 回答 2

0

这是答案:

NavigateUrl=<%# "Javascript:dnnModal.show('BasketItemDetail.aspx?popUp=true&bid=" + DataBinder.Eval(Container.DataItem, "BasketItemID").ToString() + "')"%> 

我现在可以睡觉了:)

于 2013-02-13T00:41:31.380 回答
0

而不是使用 asp.net 超链接添加使用 html 锚标记并调用 java 脚本函数,如下所示:

//javascript函数

   <script>
    function openPop(drp) {
        window.open('/BasketItemDetail.aspx?bid='+drp+'&popUp=true', false, 550, 950, false);
    }
</script>

// 锚标记

 <a href="#" onclick="javascript:openPop('1')">Click Here </a>
于 2013-02-13T04:55:39.193 回答