Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
Jquery 如何从$.post返回用户筛选器()点_Jquery_Post - Fatal编程技术网

Jquery 如何从$.post返回用户筛选器()点

Jquery 如何从$.post返回用户筛选器()点,jquery,post,Jquery,Post,我有一个问题,我不知道它在哪里,我有一个脚本,将数据发布到php文件,并获取HTML输出,然后我想过滤它,使其仅使用页面的一部分 我的脚本是这样的 var newsletter_form = $(".newsletter_signup_form"); var newsletter_firstname = $("#newsletter_firstname"); var newsletter_surname = $("#newsletter_surname"); var newsletter_

我有一个问题,我不知道它在哪里,我有一个脚本,将数据发布到php文件,并获取HTML输出,然后我想过滤它,使其仅使用页面的一部分

我的脚本是这样的

var newsletter_form  = $(".newsletter_signup_form");
var newsletter_firstname  = $("#newsletter_firstname");
var newsletter_surname  = $("#newsletter_surname");
var newsletter_email  = $("#newsletter_email");

newsletter_form.submit(function(){
    $.post("news_signup.php", $(".newsletter_signup_form").serialize(), function( response ) {
        console.log(response);
        var newletter_messages = $( response ).filter( ".messages" );
        $( ".newsletter_messages" ).html( newletter_messages );
    }).done( function() { console.log( "DONE" ); } );
    return false;
});
我的PHP文件是这样的,它是基本的,不使用任何PHP,但我只是想得到响应(这也是我console.log时响应的样子)


文件
  • 参加
某物
这是用于输出响应的HTML

<div class="newsletter_messages">
      Loading....
</div>

加载。。。。
所以我想从回复中获取“.messages”并更新。“newsletter\u messages”和回复

console.log向我显示完整的HTML将返回到Javascript,但当我过滤并尝试更新HTML时,它只会为空

我觉得我没有正确使用filter()的html()方法。我还在学习Jquery。另外,我还有另一个post方法,它只对不同的for执行相同的操作,该方法与filter()和html()调用配合得很好。对于这个例子,我已经注释了所有其他Jquery代码,以防它弄乱了它,但仍然没有注释

有人能发现它或者给我指出正确的方向吗


非常感谢您的帮助

您应该使用jquery find()函数而不是filter。过滤器将检查给定响应的选择器,它不会通过嵌套元素。

您得到的响应是什么?您能修改代码吗?响应与php文件相同。我现在就试着弄把小提琴来@开玩笑10这太完美了!这就是问题所在,当你为自己学习时,有时你看不到简单的解决办法!再次感谢你的帮助。从理论上讲,如果我缩小搜索范围,另一件事会被过滤掉。例如,代替过滤器(“.messages”)可能是类似过滤器(“.newsletter\u form”、“.messages”)的东西,或者是那些行很长的东西?我不是建议我使用这个,但我只是想知道。如果您调用filter(function(index,theElem){console.log(theElem);}),您可以测试通过多个数据和选择器的过滤器的内容;这将在筛选时调用函数,如果返回true,则满足筛选条件,否则不包含元素。
<div class="newsletter_messages">
      Loading....
</div>