gpt4 book ai didi

c# - .ascx 中的 javascript 函数

转载 作者:行者123 更新时间:2023-11-30 13:35:49 24 4
gpt4 key购买 nike

我已经查看了关于 SOF 的大约 5 个问题,但还没有真正找到有用的答案。我应该如何从我的 .ascx 控件中的客户端事件调用我的 javascript 函数?这是我的 .ascx 文件。大多数答案让我得出以下结论:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="UIMenu.ascx.cs" Inherits="controls_UIMenu" %>

<script language="javascript" type="text/javascript">
function insetItem(myMenu)
{
myMenu.setAttribute("class", "myClass");
}
</script>

<asp:Menu ID="Menu1" runat="server" Font-Bold="True" Font-Size="Large" Height="50px"
Orientation="Horizontal" Target="_self" StaticMenuItemStyle-HorizontalPadding="10px"
OnMenuItemClick="insetItem(this)" StaticMenuItemStyle-BorderStyle="outset">
<Items>
<asp:MenuItem NavigateUrl="~/Home.aspx" Target="_self" Text="Home" Value="Home"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Loaner.aspx" Target="_self" Text="New" Value="New"></asp:MenuItem>
</Items>
</asp:Menu>

这样做时我会遇到不同的错误。 “.....ascx 不包含“insetItem”的定义”,我使用此文件的其他页面不再识别它。当我尝试将 js 放在将使用它的实际 .aspx 页面上时,我得到同样的无定义错误。

我刚开始学习jscript,还是菜鸟。我正在努力做到这一点,因此当用户向下单击菜单项时,我希望该项目的边框样式更改为“插入”。我不确定如何更改在 javascript >_< 中单击的特定项目的属性,但这是另一个问题。如果有人也能以正确的方式引导我这样做,那就太棒了。谢谢!

最佳答案

错误来自“OnMenuItemClick”是服务器端的事件处理程序。它没有在服务器端找到“insetItem”,因此抛出错误。

如果您希望在单击菜单项时发生操作,您可以将 onclick="insetitem(this);return false;" 放入 MenuItem标签

<asp:MenuItem onclick="insetitem(this);returnfalse;" NavigateUrl="~/Loaner.aspx" Target="_self" Text="New" Value="New"></asp:MenuItem>

return false; 将阻止页面在单击菜单项时执行回发。

我没有设置任何东西来测试它,一切都在头脑中,所以你可能需要稍微调整一下才能让它工作。 :)

关于c# - .ascx 中的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4892779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com