0

我的页面中有一个 iframe,我在其中加载具有淡入淡出效果的网站内容。
为了在 iframe 中处理表单提交,我创建了这个函数:

$("#coll").contents().find("form input[type=submit").bind("click",function(event)
{
      event.preventDefault();
      element=$(this).parent("form");

      if (element.attr("action") === "") {
            $("#coll").fadeOut("slow",function()
            {
                element.submit();
            });
      }
      else {
            var page = element.attr("action");
            $("#coll").fadeOut("slow", function()
            {
                $('#coll').attr("src",page);
            });
       }
       return false;
});

问题是,如果表单具有加载新页面的操作,但不会发送表单的值。哪里有问题?

具有空操作的表单可以正常运行。

4

1 回答 1

1

如果表单没有操作,您只调用提交。如果它确实有一个操作,您只需将 src 设置为操作页面 - 这不会提交表单,它只是更改 url。您需要调用element.submit()else子句。

于 2012-05-18T00:40:27.430 回答