0

在我的网站上,我有一个由按钮单击触发的弹出窗口,并且工作正常。此弹出窗口包含一个注册表单和以下 js:

<script type="text/javascript">
<!--
jQuery(function () {
    jQuery("input#submit").click(function () {
        jQuery('#response p').empty().append("<img src='ajax-loader.gif' />");
        var name = jQuery("#name").val();
        var email = jQuery("#email").val();
        var dataString = '&name=' + name + '&email=' + email;
        jQuery.ajax({
            url: "popupmailer.php",
            data: dataString,
            type: "GET",
            success: function (responseText) {
                jQuery('#response p').empty().append(responseText);
            }
        });
        return false;
    });
});
-->
</script>

这似乎工作正常,但是一旦我在 IE 中尝试这个,弹出窗口根本不会出现。我试图解决这个问题,一旦我删除了上面提到的代码,弹出窗口就会再次出现在 IE 中。

有人能够帮助我并确定这里出了什么问题以便完成这项工作吗?谢谢你。

4

2 回答 2

1

你应该尝试form submit

<script type="text/javascript">

jQuery(function () {
   jQuery("form").submit(function (e) {
     jQuery('#response p').empty().append("<img src='ajax-loader.gif' />");

     var dataString = $('form').serialize(); //<---just serialize the form this will make a dataString you want.

     jQuery.ajax({
        url: "popupmailer.php",
        data: dataString,
        type: "GET",
        success: function (responseText) {
            jQuery('#response p').html(responseText); //<--use .html() here
        }
     });
     return false;
  });
});

</script>
于 2013-01-29T06:14:04.520 回答
0

尝试这个

jQuery('#response p').empty().html(responseText);

代替

jQuery('#response p').empty().append(responseText);
于 2013-01-29T06:07:06.380 回答