Javascript 使用jquery从post数据中检索元素
注意:在一些评论的帮助下,这很可能是不可能的 我使用jqueryajax调用发送电子邮件地址,在被调用的PHP文件中,根据结果返回错误或成功消息 现在我想在jQueryJavascript 使用jquery从post数据中检索元素,javascript,jquery,ajax,select,http-post,Javascript,Jquery,Ajax,Select,Http Post,注意:在一些评论的帮助下,这很可能是不可能的 我使用jqueryajax调用发送电子邮件地址,在被调用的PHP文件中,根据结果返回错误或成功消息 现在我想在jQuery$.post成功后提醒这个结果,问题是被调用的PHP文件包含一个配置文件,该文件也包含一个Javascript文件,因此我的数据如下所示: 消息 因此,我尝试了以下方法: 数据 src=“x.js”>消息 我在我的$中尝试了两种不同的方法 发布 $.post('ajax.php',function(data){ aler
$.post
成功后提醒这个结果,问题是被调用的PHP文件包含一个配置文件,该文件也包含一个Javascript文件,因此我的数据如下所示:
消息
因此,我尝试了以下方法:
数据
src=“x.js”>消息
我在我的$中尝试了两种不同的方法
发布
$.post('ajax.php',function(data){
alert($(data).find('p'));
// this returns [object Object]
alert($(data).find('p').html());
// this returns null?
}
事实上,alert($(data).find('p')
返回[object object]
让我觉得它在工作,但我不明白为什么.html()
返回null
。如果我通过firebug检查数据
,它会准确地显示我上面键入的内容
一些额外信息
console.log(数据)
返回
src=“x.js”>消息
console.log($(data.find('p'))
返回jQuery对象
console.log($(数据).find('p').length)代码>返回0
按预期返回消息
最终编辑
$.post('ajax.php',function(data){
alert($(data).find('p'));
// this returns [object Object]
alert($(data).find('p').html());
// this returns null?
}
我没有想到$(data.find('p')
中的$
可能就是它返回[object]
的原因
现在我想了想,很明显我不可能做到我所要求的,因为我试图在字符串上使用jQuery的选择器引擎。我将更改我的文档结构,从配置文件中删除JS引用。只需在PHP中重复它即可
alert(<?php echo $_POST['variable']; ?>);
alert();
要使用选择器,首先需要将该字符串作为DOM树的一部分$(数据)没有这样做
自动地,您需要将其附加到元素(如body)或替换现有元素
onComplete: function(content) {
content.find("#whatever"); // won't work
$("#existingElement").html(content);
$("#existingElement").find("#whatever"); // works
}
如果没有使用,为什么PHP页面会写出一个JS引用?您可以通过ajax(使用firebug等)发布返回的数据吗?还可以尝试添加警报($(数据).find('p').length)
并用结果更新帖子?console.log(数据)
包含什么,console.log($(数据).find('p'))
包含什么?@Fosco,因为需要相同配置文件的所有其他页面都使用JS引用@Niklas,console.log(data)
包含我在问题中的数据下键入的内容(如我所说),console.log($(data.find('p'))
返回jQuery对象@Cybernate,console.log($(数据).find('p').length)代码>返回0。我不确定您是否可以用这种方式转换它并使用find。尝试将其附加到dom树,以便可以自然地对其进行解析。尝试附加它$(..)始终返回jQuery对象,因为$是jQuery对象,而且find是扩展$的空集合,它将是object Too。我确信他的最终目的是不让变量发出警报
,即使它是.js文件,也不会被PHP解析。即使是这样,它也不会包含一个尚未通过ajax调用检索的变量。我只是想帮忙。如果我犯了错误,请原谅我。如果我的评论听起来有失身份,我很抱歉,但你的回答没有经过深思熟虑。我知道。整个想法是直接从数据中检索p
。