从 HTML div 启动 JavaScript 函数,其中函数名称是动态生成的 ASP.NET

Posted

技术标签:

【中文标题】从 HTML div 启动 JavaScript 函数,其中函数名称是动态生成的 ASP.NET【英文标题】:Launch JavaScript function from HTML div where function name is generated dynamically ASP.NET 【发布时间】:2019-12-24 15:54:29 【问题描述】:

我像这样动态生成 javascript 函数名:

<script>
        function mouseOver<%= _@special.ObjectId %>() 
            //do stuff;
        
</script>

后来我需要从 html 启动这个函数,但是什么也没发生:

<div onmouseover='mouseOver" + _@special.ObjectId +"()' />

我想我用错误的方式称呼它。 顺便说一句,@special.ObjectId 是取自 Model 的数字,它不为空。这里怎么调用函数?

【问题讨论】:

为什么需要动态创建函数名? 我正在寻找控制不同 div 行为的选项。你建议使用我猜的一个功能 这真的取决于您的需求。但是,如果您将您的 div 归因于数据/ID,那么我看不出为什么一个功能会成为问题 你是对的,我从错误的角度看待这个问题。我忘记了 JS 的工作原理与我所知道的语言相同,所以我会将 ID 传递给单个函数并从那里开始处理它。感谢您指出这一点! 【参考方案1】:

当我们遇到类似问题时,我们按照这种方式调用动态脚本。

<script>
function mouseOver(id) 
        //do stuff;

</script>

<div onmouseover='mouseOver(" + _@special.ObjectId +")' />

希望这会有所帮助!

【讨论】:

这很有帮助!我正忙着让它工作。 我认为您的示例中的引号需要转义(或替换为双引号):onmouseover='mouseOver(\" + _@special.ObjectId +\")'

以上是关于从 HTML div 启动 JavaScript 函数,其中函数名称是动态生成的 ASP.NET的主要内容,如果未能解决你的问题,请参考以下文章

使用javascript将文本从div复制到剪贴板

如何在使用 Javascript 在 div 中附加 html 时实现字符串插值

从 javascript 调用 XSLT

使用javascript单击div内的x按钮动态添加和删除div [重复]

缩放网页内容上的特定元素(HTML、CSS、JavaScript)

从 javascript 数组创建 HTML 表