1

你必须忍受我,因为我刚刚开始使用 jQuery,所以这可能是我忽略的一件非常简单的事情。我有一个正在开发的网站的登录表单,我正在尝试使用 ajaxSubmit 发送丢失密码请求的请求。此请求源自模态 div 上的表单。

形式:

<div id="dialog" style="display: none" title="Retrieve your password">
        <p>
            Please enter your username below and you will have a new password sent to the email address you registered with the account.
        </p>
        <form id="passform" action="comment.php" method="post">
            <input type="text" name="user" id="user">
        </form>
    </div>

jQuery提交请求:

$(document).ready(function()
        {
            function doit(formData, jqForm, options)
            {
                // formData is an array; here we use $.param to convert it to a string to display it
                // but the form plugin does this for you automatically when it submits the data
                var queryString = $.param(formData);

                // jqForm is a jQuery object encapsulating the form element.  To access the
                // DOM element for the form do this:
                // var formElement = jqForm[0];

                alert('About to submit: \n\n' + queryString);

                // here we could return false to prevent the form from being submitted;
                // returning anything other than false will allow the form submit to continue
                return true;
            }


            $("#getpass").click(function()
            {

                $("#dialog").dialog(
                {
                    autoOpen : true,
                    resizable : false,
                    height : 270,
                    modal : true,
                    hide : "fold",
                    show : "fold",
                    buttons :
                    {
                        "Retrieve Password" : function()
                        {
                            $("#passform").ajaxSubmit(
                            {
                                url : "php/lostpassword.php",
                                type : "post",
                                success : doit
                            });
                            return false;
                        },
                        Cancel : function()
                        {
                            $(this).dialog("close");
                        }

                    }
                });

            });

        });

但是,当我实际按下按钮时,我收到以下控制台错误: Uncaught TypeError: Object [object Object] has no method 'ajaxSubmit'

我已经检查了 ID 是否全部匹配,并且正在加载相关的 js 文件。

我现在没有想法了,有人可以帮忙吗?

4

2 回答 2

1

有同样的错误信息,并通过添加具有 ajaxSubmit 功能的 jQuery Form 插件解决。

于 2013-02-28T09:15:09.410 回答
1

仅供将来参考,因为我是个白痴,所以抛出了错误:/我显然包含了两个不同版本的 jQuery,只要我删除了额外的包含,它就开始工作了。

于 2012-12-19T09:45:05.997 回答