Jul*_*s A 5 .net asp.net gridview hyperlink
我有一个问题,我的Asp.net GridView中的超链接字段不接受将打开弹出对话框的Javascript函数.
我正在使用以下代码段
<asp:GridView>
<asp:HyperLinkField
DataTextField="SomeColumn" HeaderText="Some Column Text"
SortExpression="SomeColumn"
HeaderStyle-HorizontalAlign="Left"
DataNavigateUrlFormatString="javascript:LaunchSomePopupdialog({0})"
DataNavigateUrlFields="Id"
ItemStyle-Font-Underline="true" />
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
但是,当我使用页面网址时,它可以工作,例如:
DataNavigateUrlFormatString="~/SomeOtherPage.aspx?Id={0}"
Run Code Online (Sandbox Code Playgroud)
有没有办法让我的JavaScript函数能够运行?
我认为你必须在不使用asp:hyperlinkfield的情况下将其更改为模板字段内的普通标记.然后你可以做这样的事情:
<asp:TemplateField HeaderText="Some Column Text" ItemStyle-Font-Underline="true">
<ItemTemplate>
<a href="#" onclick="javascript:LaunchYourStuff('<%#Eval("YourColumnID")%>')"><%#Eval("YourColumnDisplayText")%></a>
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
所有asp:hyperlinkfield属性都放在templateField标记上.
编辑
您不能在超链接字段中放置javascript,因为这是设计使然
| 归档时间: |
|
| 查看次数: |
5147 次 |
| 最近记录: |