0

如果以下可能?我希望将警报(结果)移动到一个函数中并动态调用它。

当前的

$.ajax(this.href, {
    success: function (result)
    {
        alert(result);

        AjaxComplete();
    }
});

我的尝试 - 不工作

$.ajax(this.href, {
    success: function (result)
    {
        window["MyAlert(result)"]();

        AjaxComplete();
    }
});

function MyAlert(result)
{
    alert(result);
}

这可能吗?

4

2 回答 2

3

为什么你不能这样做?

MyAlert(result);

如果MyAlertwindow对象的一部分,则它已经是全局的。

除非您想按名称调用任意函数(这不是很好的做法,IMO),否则您可以这样做:

window[function_name_string](argument);
于 2012-09-13T03:19:59.923 回答
1
window["MyAlert(result)");

是无效的语法(不匹配[),错误的函数名,根本没有调用它,只是得到它..)。应该

window["MyAlert"](result);

如果您想这样称呼它,但是正如 Blender 所提到的,我认为您没有理由不能正常称呼它。

于 2012-09-13T03:22:02.890 回答