问题
我有一个jquery POST代码,可以将数据发送到PHP和PHP回复。
PHP回复如下:
echo '<div class="blabla">hello world!</div>';
我想做这样的事情:
if (data == 'hello world') {
do something
}
这是我的jQuery:
$.post("events.php?action=send", { data : $(this).serialize() }, function(data)
{
$("#processing").html('');
if (data == 'hello world')
{
$(".error").html(data);
}
else
{
$("#comments").html(data);
}
submit.fadeIn("slow");
});
问题
如果我只使用if = ='something',而不使用HTML,则会失败。
是否存在忽略HTML并且只在HTML标记内看到TEXT的函数?
谢谢!
答案 0 :(得分:5)
如果将字符串传递给jQuery构造函数,该构造函数将返回一个DOM对象,然后您可以在其上使用标准的jQuery方法。
例如:
var data = '<div class="blabla">hello world!</div>';
if($(data).text() == 'hello world!'){
console.log('hello world is the content');
}
data
将保留为字符串并将作为字符串,但您正在比较DOM元素的.text()
。
注意:在大型HTML字符串上,这可能需要一段时间才能处理成DOM元素。明智地使用。理想情况下,您应该将JSON与您的AJAX请求等一起使用。
答案 1 :(得分:-2)
这是你要找的吗?
的.text()
您可以将字符串放在jQuery(“$()”)中,这样您就可以获得$(data).text()并将字符串作为文本返回;