我最初的目标是这样的复选框:
$("#" + tempid_array[0] + " #" + tempid_array[1]).click();
它还执行了与之相关的任何绑定事件/动作......并且这 - 确实 - 工作。
但是,我想在执行此操作之前检查目标复选框是否在舞台上。(否则绑定的事件将不会被执行,我需要手动执行相同的操作。)
我的问题是两部分:
1.)为什么这 - 没有 - 在舞台上找到目标复选框(当它 100% 是时)
我使用相同的选择器/语法来执行 click() 事件??
//check if checkbox is on stage
if($("#" + tempid_array[0] + " #" + tempid_array[1]).lenth > 0){
//checkbox found, un-checking
console.log("checkbox is on stage");
//let bound checkbox event do everything
$("#" + tempid_array[0] + " #" + tempid_array[1]).click();
//$("#" + tempid_array[0] + "#"+tempid_array[1]).prop("checked", false);
//$("#" + tempid_array[0] + "#"+tempid_array[1]).attr("checked", false);
}else{
//checkbox not found
console.log("checkbox -not- on stage");
//do everything ourselves
//etc...etc...
}
以上总是返回false,在舞台上找不到复选框?
2.)当复选框上的 click() 事件被触发时(当独立使用而不是在 if() 语句中使用时......我无法让 prop 或 attr 变体工作?复选框仍然显示复选框(如如果它仍然被选中)
我究竟做错了什么?句法?完全错误的方法?
我的主要问题是如何检测复选框是否在舞台上的任何地方?第二个问题更加好奇,因为 click() 事件触发没有问题..但是 prop/attr 什么都不做?