我的JS文件中有下面提到的代码。
initialize: function () {
if (!$("#Res").is(':checked'))
{
$("#Res").attr('checked', true);
}
}
当我尝试使用Qunit.js和blanket .js运行测试用例时。它显示了我的错误,"不能读取属性'检查'的null"可以请任何人帮助我解决这个问题或重新编写测试用例。我使用Jquery 1.4.1.js版本。问题是否与Jquery版本有关?
test("initialize test", 1, function () {
$('<input>').appendTo("body");
$('<select>').appendTo("body");
$('<input>', { type: "checkbox", checked: true, id: "Res"}).appendTo("body");
var result = mydomain.initialize();
equal(undefined, result, "passed");
$('input, select').trigger("blur");
ok(true, "blur event called");
$('input, select').trigger("change");
ok(true, "change event called");
$("input").remove();
$("select").remove();
});
选项1
使用浏览器的开发工具,执行以下命令:
$("#Res")
如果你想到null
,这意味着你的控件没有按你期望的那样创建。
选项2。
如果选项1是好的,那么你可能在创建输入之前调用initialize
函数。
在任何情况下,这是很难帮助你,因为你没有张贴的结果HTML通过查看网页的源代码一旦它加载。
选项3。
复选框库通常使用css,并在初始化后隐藏实际的复选框输入。您应该检查可用的事件或属性以检查它们的状态。