如何在包含 Eval 的 asp 超链接中调用 javascript 函数

How to call javascript function inside asp hyperlink that includes an Eval

本文关键字:超链接 调用 javascript 函数 asp 包含 Eval      更新时间:2023-09-26

下午好,我有一个带有asp:hyperlink TemplateField的网格视图。单击我想触发弹出窗口。我的js看起来像这样。

<script>
    function popups(url) {
        newwindow = window.open(url, 'name', 'height=300,width=735');
        if (window.focus) { newwindow.focus() }
        return false;
    }
</script>

代码的非弹出版本如下。

<ItemTemplate>
    <asp:HyperLink Target="_blank" DataNavigateUrlFields="PriceListItemID" ID="lnkQty" runat="server" DataNavigateUrlFormatString="../PricingTool/PriceListQuantity.aspx?PriceListItemID={0}" Text='<%# Bind("NumQty") %>' NavigateUrl='<%# "../PricingTool/PriceListQuantity.aspx?PriceListItemID=" + Eval("PriceListItemID") %>' />
 </ItemTemplate>

我做了几次尝试,导致错误"服务器标签格式不正确",包括下面的损坏代码。

<asp:HyperLink Target="_blank" DataNavigateUrlFields="PriceListItemID" ID="lnkQty" runat="server" Text='<%# Bind("NumQty") %>' NavigateUrl='<%# "Javascript:popups.show('../PricingTool/PriceListQuantity.aspx?PriceListItemID=" + Eval("PriceListItemID").ToString() + "')" %>' />

任何帮助将不胜感激。

你必须在

OnClick 属性中设置 JavaScript 函数/代码:

<asp:HyperLink Target="_blank" OnClick="popups();" />

尝试在 OnClick 中调用如下方法:

<asp:HyperLink Target="_blank" OnClick="Javascript:popups(url);" />