单击按钮时未定义功能

时间:2014-03-12 07:33:28

标签: javascript scope

我使用函数function makeModalEnroll(name, description, i, id)生成模态表单 在我的一行中有一个字符串

modal += '<button type="button" id="enroll' + i + '" class="btn btn-success" data-dismiss="modal" onclick="send(this.id);"> Enroll <span class="glyphicon glyphicon-arrow-right"></span> </button>';

我已经有了send功能,现在我用id = 0提交表单

function send(id) {
    alert(id);
    var c = id.charAt(id.length - 1);
    alert(c);
    $('#enrollForm0').ajaxSubmit({url: 'enroll.html', type: 'post'});
};

但浏览器说ReferenceError: send is not defined。 我试图在函数send之前和之后放置函数makeModalEnroll,但总会发生此错误。

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您可能不会将您的功能暴露给全局范围,请尝试:

window.send = function(id) {
    alert(id);
    var c = id.charAt(id.length - 1);
    alert(c);
    $('#enrollForm0').ajaxSubmit({url: 'enroll.html', type: 'post'});
};