Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在var中存储html(响应)_Javascript_Html_Ajax - Fatal编程技术网

Javascript 在var中存储html(响应)

Javascript 在var中存储html(响应),javascript,html,ajax,Javascript,Html,Ajax,我正在使用ajax发送表单,无需重新加载。为此,我使用以下方法: 我的邮件发件人: if (filter_var($email, FILTER_VALIDATE_EMAIL)) { mailTo($to, $subject, $message, $headers); echo "0"; }else{ echo "1"; } 将信息发送到上面的php文件的脚本 $(document).ready(function(){ $('#submitbtn').click

我正在使用ajax发送表单,无需重新加载。为此,我使用以下方法:

我的邮件发件人:

if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    mailTo($to, $subject, $message, $headers); 
    echo "0";
}else{
    echo "1";
}
将信息发送到上面的php文件的脚本

$(document).ready(function(){
    $('#submitbtn').click(function(){
        $.post("send.php", $("#mycontactform").serialize(),  function(response) {   
            $('#success').html(response);
        });
        return false;
    });
});
每当我发出一封有效的电子邮件并发送它时,它就会返回
0
。当它失败时,它返回
1
。现在,我不想在div#SUCCESS中显示这个值,而是想将这个值存储在一个var中,以便查看邮件是否已发送。如果发送,则可以隐藏联系人表单

我想到了这个:

$(document).ready(function(){
    $('#submitbtn').click(function(){
        $.post("send.php", $("#mycontactform").serialize(),  function(response) {   
            var x = html(response);
            if (x == 0){
            $('#mycontactform.hide').hide;
                document.getElementByID('succes').innerHTML = 'Message send';
            }else{
                //display some error message
            }
        });
        return false;
    });
});

但它不起作用。谁都知道为什么。我假设它与
var x=
没有在您的第一个代码片段中存储Html响应有关,您这样做了:

$('#success').html(response);
var x = html(response);
在这里,html()是$的函数,在您的第二个代码段中,您这样做了:

$('#success').html(response);
var x = html(response);
但您可能没有名为html()的全局函数?您可能想要:

var x = parseInt( response,10 );

我还强烈建议您考虑使用Chrome/FireFox/IE开发工具,以便将来调试类似的东西。

您可以在收到响应后准备html,然后将其附加到以前的版本中。这样可以避免刷新页面

你能做这样的事吗

 $(document).ready(function()
        {
         var html = '';
         html += '<div class="item col-xs-12 col-lg-6">';
         html += '<div class="thumbnail">';
         html += '<div class="caption">';
         html += '<h4 class="group inner list-group-item-heading">';
         html += '<b>'+data.subject+'</b></h4>';
         html += '<h5><b>'+data.projectname+'</b></h5><br />';
         html += '</div>';
         html += '</div></div>';
         $('#content').append(html);
        });
$(文档).ready(函数()
{
var html='';
html+='';
html+='';
html+='';
html+='';
html+=''+数据。主题+'';
html+=''+data.projectname+'
; html+=''; html+=''; $('#content').append(html); });

content是我部门的id。我正在准备html,并将其添加到content数据中是响应。

什么是
html(响应)
应该做什么?
html()
函数在哪里?你没有html响应,你有
0
1
(如上所述),只需存储它即可
var x=response
您缺少
hide()
的()。您确定它是
0
?这确实是问题所在。我在chrome上做了beggugin,看到html()无法识别,但由于它可以将信息传递到div中,我想不出为什么我尝试的东西不能识别。很多