我建立了一个流星灼烧的应用程序,现在我正试着用CodeceptJS来测试它。问题是,我的所有输入字段在DOM(F12模式)中都没有值,但我在浏览器中看到了这些值。在meteor中,我使用template-helpers从我的MongoDB集合中读取它们,并将它们传递给blaze/spacebars。因此,流星实时(使用JavaScript完成加载/生成后)用JavaScript写入所有值。如何查找网站加载后生成的输入值?
我有一个值为“codeceptjs”的输入字段。但我无法在DOM中看到它(chrome:F12模式)。它让我只有这个:
<div class="input"><input data-title type="text" title="Todo Title"></div>
然而,在我的流星闪耀的文件我有以下:
<div class="input"><input data-title type="text" value={{title}} title="Todo Title"></div>
同样的JQuery无法找到他们,因为在DOM中没有值:
jQuery('input[value="codeceptjs"]').length
0
如何在不更改工作应用程序的情况下使用jQuery/codeceptjs访问实时输入值?
'jQuery('input [value =“codeceptjs”]')'找不到任何东西,因为'input'元素没有具有该值的属性。我不确定你的意思是通过访问'实时输入值',但'val()'或'prop('val')'应该满足你的需求。 –
重要的是要明白,更改值属性(通过代码或用户输入)不会更改值属性 – charlietfl
我知道我的元素在DOM中没有此属性。网页(DOM)完全加载后,Meteor将在Blaze和JavaScript的帮助下更改所有值。我的应用程序就像一个拥有无限输入字段的待办应用程序(例如待办事项名称),可以重命名/更改并实时删除。我在浏览器中看到了此字段的值。但是我的浏览器并没有在F12模式下显示这个值 - 因为它在DOM之后实时激活它们。必须有办法找到它们。 –