1

谁能告诉我为什么以下代码无法将表单提交到弹出窗口中?单击链接应将表单提交到弹出窗口中

$(".myClass").click(function () 
    {
        var myVar = $(this).attr("rel");
        //$(this).closest("form").submit();


        $("#form_id"+myVar).submit(function() 
        {
            window.open('', 'formpopup', 'width=700,height=550,resizeable,scrollbars');
            this.target = 'formpopup';
        });     

    return false;
    })  

如果我删除弹出选项并且只有 $(this).closest("form").submit(); 有用。但事实上它失败了。有什么想法/建议吗?firebug中没有js错误。

注意:目前我们不想使用模态窗口 - 所以请不要使用模态建议。

4

1 回答 1

2

你从来没有真正提交过表格。您只需将submit事件处理程序绑定到它。您可以使用submittrigger实际触发submit事件:

$("#form_id"+myVar).submit(function() {
    window.open('', 'formpopup', 'width=700,height=550,resizeable,scrollbars');
    this.target = 'formpopup';
}).submit(); //Submit the form after binding event handler

您注释掉的调用submit将在事件处理程序绑定到表单之前发生,因此它永远不会被执行。

于 2012-06-07T08:28:52.147 回答