jQuery提交后,“数据”不显示为HTML

时间:2013-06-13 20:30:36

标签: jquery forms submit shadowbox

我正在使用此代码提交一个“灯塔”或“Shadowbox”的表单。任何方式窗口弹出,屏幕的其余部分变暗。

    var frm = $('#contactForm1');
    frm.submit(function () {
        $.ajax({
            type: frm.attr('method'),
        url: frm.attr('action'),
        data: frm.serialize(),
        success: function (data) {
            alert(data);
        }
    });

    return false;
    });

我接受了它:From here。我将表单提交给submit.php脚本。它在提交时工作正常但是它将结果从submit.php返回为“alert”并且它不是HTML,它是纯文本,我看到它们都是HTML。

我的问题是如何提交表单,以便结果返回该影子箱而不是提醒?

2 个答案:

答案 0 :(得分:1)

使用也可以使用fancybox是一种工具,用于在Mac风格的“灯箱”中显示图像,html内容和多媒体,浮动在网页上方。

答案 1 :(得分:0)

正如@Joe所说,你不能在alert()中使用html,所以如果你想以这种方式显示Html,最好使用[Dialog | jQuery UI] [1]

编辑:既然您正在使用bootstrap,就可以这样做:

$(document).ready(function() { 
 var frm = $('#contactForm1');
 frm.submit(function (e) {
        e.preventDefault();
        $.ajax({
            type: frm.attr('method'),
            url: frm.attr('action'),
            data: frm.serialize(),
            success: function (data){
              $("#modal-body").html("Your result:" + data);
           }
       });
    });
});

这是一个工作示例:http://jsfiddle.net/ouadie/bREQq/

只需使用jsfiddle.net上的代码,并将其放在<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="bootstrap.min.js"></script>   

 <!-- Bootstrap -->
<link href="bootstrap.min.css" rel="stylesheet" media="screen">
<link href="bootstrap-responsive.css" rel="stylesheet">