0

我在我的页面中定义了一个复选框,其代码如下,

<li class="Checkbox"> 
             <input 
                 id="Flag1" 
                 onclick="obj(this);"
                 type="checkbox"
                 name="Flag1.CheckName" 
                 dojotype="rmt.YNCheckBox"
                  <c:if test="${depotVal.checkFlag}">checked</c:if> 
             /> 
        </li>     

在我的 javascript 中,我正在尝试检查是否选中了上面的复选框,并且只有在选中它的情况下,我才会继续执行其余代码。

我尝试使用以下代码。它不起作用并在页面末尾抛出错误。

var chkbox1 = dijit.byId("Flag1");

alert(chkbox1.checked);  //returns true when checked and false when unchecked

if ((chkbox1.checked) || (chkbox1.checked == true)){
       ...
        }

还有其他选择吗?如何使其始终如一地工作?上面的代码片段在 Mozilla 中也不起作用。

4

2 回答 2

0

它在哪里抛出错误?是chkbox1真正的dijit吗?

无论如何,您应该使用domNodedijit 吗?

chkbox1.domNode.checked
于 2013-04-04T13:28:02.763 回答
0

我是这样做的:

var t = query(".dijitCheckBoxInput");
array.forEach(t, function(item){
    if (item.checked) {
        item.checked = false;
    }
});

但是,这不会取消选中复选框,只会更改其内部状态。要取消选中它们,我将其容器的 innerHTML 设置为 checkBoxContainer.innerHTML = ' '; 然后我执行了最初绘制复选框的函数。

你现在可能已经想通了,但我想我会把它发布给其他试图做类似事情的人。

于 2013-07-26T14:09:45.337 回答