在空白/新页面中显示以下AJAX

时间:2014-07-12 16:51:44

标签: javascript php jquery html ajax

我想在新页面或空白页面中显示AJAX代码附带的部分,而不是在同一页面上的“旧”html代码下获取所请求的URL。

d$(document).ready(function() {
        $("#bestello").submit(function() {
            if($("#nn").val() == "" || $("#vn").val() == "" || $("#strt").val() == ""){
                $("#response").html("Bitte füllen Sie alle Felder aus!");
            } else {
                $.ajax({

                    type: "POST",
                    url: "test.php",
                    data: "nn=" + $("#nn").val() + "&vn=" + $("#vn").val() + "&strt=" + $("#strt").val(),
                    success: function(msg)
                    {
                        $("#response").html(msg);
                    }
                });

            }
            return false;
        });
    });

else或$ .ajax之后的所有内容({应显示在空白/新页面中。 我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您正在寻找弹出功能。

将以下代码放入成功函数

var w = window.open('', '', 'width=400,height=400,resizeable,scrollbars');
w.document.write(msg);
w.document.close(); // needed for chrome and safari

答案 1 :(得分:0)

不是使用ajax提交表单,而是允许使用其本机功能提交表单。将属性target='_blank' action='test.php' method='post'添加到表单,以便它将使用post提交到test.php并在新的选项卡/窗口中打开。

您仍然可以使用javascript来验证表单。你的代码看起来像这样:

$(document).ready(function() {
    $("#bestello").submit(function() {
        if($("#nn").val() == "" || $("#vn").val() == "" || $("#strt").val() == ""){
            $("#response").html("Bitte füllen Sie alle Felder aus!");
            return false;
        }
        return true;
    });
});

这将使用javascript验证表单,并且只有在通过验证时才允许它提交。 (作为旁注,你应该确保你也做了一些服务器端验证。)