如何在 qunit window 中使用 Funcunit 设置元素的 属性(测试 window)
How to set an element's property using Funcunit in qunit window (test window)
我正在使用带有 qunit 的 FuncUnit 来测试应用程序。我想将 <select>
菜单选项的 selected
属性 设置为 true
.
在 jQuery
中,我可以做类似
的事情
$('select#id option:eq(0)').prop('selected', true).change();
实现这一目标。但是,在 funcunit 中,
S('select#id option:eq(0)').prop('selected', true).trigger('change');
selector 找到元素并获取(未设置)prop selected
的值。我想设置元素的属性。
你试过这样的东西吗?
S('select#id option:eq(0)').attr('selected', 'selected').trigger('change');
在 jQuery 中,这会设置标签的任何属性。例如,对于标签 <a href="#">Link</a>
,您可以像这样设置属性 href
:$('a').attr('href', '#new-link');
)。这也适用于在旧的 XHTML 样式中添加 selected
属性。不过取消设置 属性 可能很难。
另一个选项可能是使用 click
,像这样:
S('select#id option:eq(0)').click();
你甚至不需要触发 change
。
根据 funcunit 团队的 comment - 用户无法设置选项的 属性,他们只知道执行一些操作,例如单击、拖动等
所以要实现这一点,我们需要做
S.win.$('select#id option:eq(0)').prop('selected', true).trigger('change');
这在测试 window 上运行 jquery。
我正在使用带有 qunit 的 FuncUnit 来测试应用程序。我想将 <select>
菜单选项的 selected
属性 设置为 true
.
在 jQuery
中,我可以做类似
$('select#id option:eq(0)').prop('selected', true).change();
实现这一目标。但是,在 funcunit 中,
S('select#id option:eq(0)').prop('selected', true).trigger('change');
selector 找到元素并获取(未设置)prop selected
的值。我想设置元素的属性。
你试过这样的东西吗?
S('select#id option:eq(0)').attr('selected', 'selected').trigger('change');
在 jQuery 中,这会设置标签的任何属性。例如,对于标签 <a href="#">Link</a>
,您可以像这样设置属性 href
:$('a').attr('href', '#new-link');
)。这也适用于在旧的 XHTML 样式中添加 selected
属性。不过取消设置 属性 可能很难。
另一个选项可能是使用 click
,像这样:
S('select#id option:eq(0)').click();
你甚至不需要触发 change
。
根据 funcunit 团队的 comment - 用户无法设置选项的 属性,他们只知道执行一些操作,例如单击、拖动等
所以要实现这一点,我们需要做
S.win.$('select#id option:eq(0)').prop('selected', true).trigger('change');
这在测试 window 上运行 jquery。