gpt4 book ai didi

javascript - 在 QUnit 测试中设置 $(this) 的范围

转载 作者:行者123 更新时间:2023-11-28 16:30:10 24 4
gpt4 key购买 nike

如何在 QUnit 测试环境中设置正确的范围来测试回调函数?

要测试的代码:

<script type="text/javascript">
APP = {};
APP.callBack = function() {
$(this).closest("input").val('foobar');
};

$(function() {
$("#button").click(APP.callBack);
});
</script>
<div>
<a id="button" href="#"></a>
<input id="id-for-testing-only" name="test" type="text" value="barfoo" />
</div>

测试代码:

test("try callback with 'this' scope", function() {
APP.callBack();
equals($("#id-for-testing-only").val(), "foobar", "should set value to 'foobar'");
});

最佳答案

我想,你可能想使用.trigger()触发“单击”按钮,然后检查值,而不是直接调用回调函数,独立调用时回调函数的作用域不会限于按钮的 this

$("#button").trigger("click");

关于javascript - 在 QUnit 测试中设置 $(this) 的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6358769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com