Javascript find()将一个表单放入一个不起作用的元素

Javascript find()将一个表单放入一个不起作用的元素,javascript,jquery,forms,find,Javascript,Jquery,Forms,Find,我动态地将一个公式生成到一个已定义的div容器中,并且我想获取使用ajax发送的send操作 生成HTML的步骤: 标题 正文 电子邮件 户口 该公式由管理员在wordpress页面中定义。在Javascript(jQuery)中,我只知道div容器的类名(here.mhuntform)。因此,在Javascript中,我尝试捕捉事件: //mhuntskl.options.container='.mhuntform' $(mhuntskl.options.container)。查找

我动态地将一个公式生成到一个已定义的div容器中,并且我想获取使用ajax发送的send操作

生成HTML的步骤:


标题
正文

电子邮件

户口

该公式由管理员在wordpress页面中定义。在Javascript(jQuery)中,我只知道div容器的类名(here.mhuntform)。因此,在Javascript中,我尝试捕捉事件:

//mhuntskl.options.container='.mhuntform'
$(mhuntskl.options.container)。查找('form')。提交(函数(ev){
ev.preventDefault();
var email=$(mhuntskl.options.container).find('input[type=“email”]').val();
var res=$.ajax(mhuntskl.options.ajaxurl,{async:false,数据:{action:'subscribe',email:email},数据类型:'json',类型:'POST'});
res=$.parseJSON(res);
如果(关于成功){
$(mhuntskl.options.container).hide();
}
返回false;
}
但不幸的是,submit事件不会捕获,如果我在控制台
console.log($(mhuntskl.options.container).find('form'))
中打印带有find的容器,它将只接收一个空对象

这里我犯了什么错误?

如果console.log($(mhuntskl.options.container).length);是1,console.log($(mhuntskl.options.container).find('form').length);为0则只有一个可能的原因。执行代码时,您的表单仍然不在.mhuntform div中。该表单是由另一个javascript生成的。如果不是,则js代码包装在$(document).ready中。

是否返回1-console.log($(mhuntskl.options.container).length)这里的关键问题是什么时候运行Javascript?@Adrian我在
$(document.ready(function(){});
语句中使用它。@Krasimir
console.log($(mhuntskl.options.container.length);
是1,
console.log($(mhuntskl.options.container.find('form').length);
是0