Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.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
drupal-jQuery,无法通过jQuery选择任何元素_Drupal_Drupal Modules - Fatal编程技术网

drupal-jQuery,无法通过jQuery选择任何元素

drupal-jQuery,无法通过jQuery选择任何元素,drupal,drupal-modules,Drupal,Drupal Modules,我有一个表单,我通过drupal_add_js在模块的初始化代码中添加了一个js文件 我看到了第一条调试消息,但似乎无法从文档中选择任何项目。我刚刚返回jQuery对象 但当我在firebug中添加相同的行时,它就起作用了 console.log('called => init()'); console.log(jQuery('#quiz-form').find('#edit-next')); 如果试图从表单元素检索值,请尝试: console.log(jQuery('#quiz-for

我有一个表单,我通过drupal_add_js在模块的初始化代码中添加了一个js文件

我看到了第一条调试消息,但似乎无法从文档中选择任何项目。我刚刚返回jQuery对象

但当我在firebug中添加相同的行时,它就起作用了

console.log('called => init()');
console.log(jQuery('#quiz-form').find('#edit-next'));

如果试图从表单元素检索值,请尝试:

console.log(jQuery('#quiz-form').find('#edit-next').val());

获取jQuery对象作为返回是非常好的,因为像find这样的方法实际上返回jQuery对象。您应该检查返回的jQuery对象的长度,即console.logjQuery'quick-form'。查找'edit-next'。length;。如果长度为零,那么当然找不到元素。在这种情况下,您应该确保在DOM就绪后调用JS代码,也就是说,您应该使用jQuerydocument.ready包装代码,或者使用Drupal行为。

我偶然发现了这一点。jQuery对象试图在初始化页面之前找到所选对象

我认为init模块中的drupal_add_js就足够了

但是我还必须将jquery代码包装到Dom就绪函数中。。。就像我们一直应该做的那样