gpt4 book ai didi

jquery动态函数

转载 作者:行者123 更新时间:2023-12-01 00:37:27 25 4
gpt4 key购买 nike

我只需要逻辑和理解如何做到这一点。

问题:

我有几个非常相似的函数,但我想动态创建/调用

示例:

$(document).ready(function() {         
function foo() {
$("#foo_elem").toggle(true).attr('required', true);
alert('This is foo');
}

function bar() {
$("#bar_elem").toggle(true).attr('required', true);
alert('This is bar');
}
});

如何传入 foo/bar 来创建函数?伪代码

$(document).ready(function() { 
// would pass foo/bar to this?
$($x)(function() {
$("#"+$(this)+"_elem").toggle(true).attr('required', true);
alert('This is '+$(this));
});
});

最佳答案

您想动态调用 foo 或 bar 吗?

function callMethod(method)
{
method();
}

callMethod(foo); // foo is the symbol for your method
callMethod(bar); // etc

处于高水平。不过,在您的实例中,您要求将该符号用作选择器中的变量:

function callMethod(elementPrefix)
{
$('#' + elementPrefix+ '_elem').toggle(true).attr('required', true);
alert('This is ' + elementPrefix);
}

如果您想将它既用作字符串值又用作方法名称,您可以评估符号来获取方法:

var methodName = 'foo';
var text = 'This is ' + methodName; // This is foo
var method = eval('(' + methodName + ')');
method(); // calls foo()

关于jquery动态函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5583355/

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