2

使用带有 lightbox2 的 drupal 打开一个表单。此表单来自自定义模块。

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

我已经在 theme.info 文件中包含了 functions.js 并且它出现了,我可以打开该文件并查看该函数。

出于某种原因,当我提交表单时,我不断收到“form_submission not a function”。

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;
    });

}
4

3 回答 3

1

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

您需要在文档准备好的全局范围内声明该函数。您至少需要声明变量 form_submission。然后,您可以将功能附加到您希望的任何位置。

于 2011-05-25T17:02:50.100 回答
0

并不是说这是一个完美的答案,但我从 document.ready jquery 包装器中删除了该函数,并且它接受了它。

于 2010-06-16T17:21:12.553 回答
0

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

function form_submission(data) {
   // action code
}

或者也试试

var form_submission = new function(data) {
   // action code
}
于 2010-06-16T16:09:00.700 回答