Drupal Form无法访问javascript函数(错误“不是函数”)

时间:2010-06-16 16:04:24

标签: javascript jquery drupal lightbox2

使用drupal和lightbox2打开表单。此表单来自自定义模块。

模块有一个设置:'onsubmit'=> 'return form_submission(this);'这似乎工作正常。

我已将functions.js包含在theme.info文件中并显示,我可以打开该文件并查看该功能。

出于某种原因,当我提交表单时,我一直得到“form_submission而不是函数”。

if(Drupal.jsEnabled)
{
$(document).ready(function() {
    // Call back function for AJAX call

        var form_submission = function(responseText) {
            alert (responseText); 
        }

        // preventing entire page from reloading
        return false;
    });

}

3 个答案:

答案 0 :(得分:1)

你的form_submission函数是它内部的匿名函数的本地函数(即文档就绪函数)。

您需要在文档就绪之外的全局范围内声明该函数。您至少需要声明变量form_submission。然后,您可以将功能附加到任何您想要的位置。

答案 1 :(得分:0)

form_submission必须是一个已定义的函数。

function form_submission(data) {
   // action code
}

或尝试

var form_submission = new function(data) {
   // action code
}

答案 2 :(得分:0)

并不是说这是完美的答案,但是我从document.ready jquery包装器中删除了该函数,并将其拾取。