如何使用 onclick 按 id 调用脚本

How to call a script by id using onclick?

本文关键字:调用 脚本 id 何使用 onclick      更新时间:2023-09-26

可能很明显,但我尝试搜索但无法弄清楚。我正在使用具有脚本的第三方工具。脚本具有 id,但脚本中的函数没有名称。我有一个javascript onclick函数,我只想通过onclick函数的id调用脚本。

即脚本是

<script id="feed" type="text/javascript">(function(){...}())</script>

我需要从

$('#searchBox').html("<li onClick='"$('"#feed'");'">Click to contact us</li>");

我试图像上面一样调用"提要"脚本,但没有运气。如果很重要,"feed"脚本位于页面正文中,#searchBox 是该页面上搜索字段中的自动建议框。将不胜感激任何帮助!谢谢!

我会试试这个:

$("#searchbox").html("<li onClick='"eval($('"#feed'").html())'">Click to contact us</li>")

假设 #feed 中的脚本自行执行,如下所示:(function(){...})()

但是,如果函数看起来与您发布的完全一样,(function(...){}) ,这应该有效:

$("#searchbox").html("<li onClick='"eval($('"#feed'").html())()'">Click to contact us</li>")

您可以尝试将未命名的函数转换为命名函数。 通过在头部添加新的脚本标签。

$('<script></scr' + 'ipt>', {
    html: 'function feedback(){' + $('#feed').html() + ' }',
    type: 'text/javascript'
}).appendTo('head');

或者更好的是,通过使用new Function

var feedback = new Function($('#feed').html());

然后在新 DOM 元素的单击处理程序中使用该函数。

$('#searchBox').html($('<li></li>',{
    text: 'Click to contact us'
}).click(feedback));

(我讨厌使用内联JavaScript。