Javascript 拿所有的ajaxed li&x27;s

Javascript 拿所有的ajaxed li&x27;s,javascript,jquery,ajax,Javascript,Jquery,Ajax,问题是我找不到一种方法来从ajax的内容中提取所有li.form字段元素。在许多方面尝试了函数查找。我不明白怎么了 例如,我这样做console.log(“fields”,$(self.element)[0]) 我可以看到元素.form字段存在 但当我尝试获取它们时,它返回错误 console.log("fields", $(self.element)[0].find('.form-field')); 假设您使用的是类似jQuery的东西,那么您应该在jQuery完成请求并设置dom后访问元

问题是我找不到一种方法来从ajax的内容中提取所有
li.form字段
元素。在许多方面尝试了函数
查找
。我不明白怎么了

例如,我这样做
console.log(“fields”,$(self.element)[0])

我可以看到元素
.form字段
存在

但当我尝试获取它们时,它返回错误

console.log("fields", $(self.element)[0].find('.form-field'));

假设您使用的是类似jQuery的东西,那么您应该在jQuery完成请求并设置dom后访问元素:

$( "#result" ).load( "ajax/test.html", function() {
  console.log("form fields:",this.querySelectorAll('.form-field').length);
});

那么
$(self.element)呢。查找('.form field')
?请注意
$(self.element)[0]
正是
self.element
您需要在此处发布实际代码。当您尝试获取元素时,可能元素不存在。Ajax是异步的,您必须确保在创建元素后尝试获取它们。如果在返回ajax响应时创建它们,则需要在promise resolve处理程序中访问它们。尝试以下操作并查看存在多少
.form field
元素:
(function(){var els=$(“.form field”);debugger;}()
@HMR您是对的!非常感谢。贴出答案。