【问题标题】:How to determine whether a DOJO Checkbox is checked or not?如何判断 DOJO Checkbox 是否被选中?
【发布时间】:2013-04-05 09:42:02
【问题描述】:
<input id="test" type="checkbox" value="test" data-dojo-type="dijit.form.CheckBox">

如何检查上面的 dojo 复选框在我的 javaScript 函数中是否被选中。

【问题讨论】:

    标签: javascript syntax dojo


    【解决方案1】:

    您可以通过多种方式进行检查。你可以使用普通的 HTML/DOM/JavaScript 并使用类似的东西:

    if (document.getElementById("test").checked) { ... }
    

    或使用 Dojo:

    if (dojo.byId("test").checked) { ... }
    

    这就是@Shreyos Adikari 我想的意思,但您也可以使用小部件本身(在屏幕后面做同样的事情):

    if (dijit.byId("test").checked) { ... }
    

    前两种方法与最后一种方法的区别在于,前两种使用 DOM 节点,而最后一种使用具有相似属性的 Dojo CheckBox 小部件/对象。 我个人推荐最后一个,因为这应该始终有效,即使他们决定更改模板。

    但无论如何,网络上有很多关于如何实现这一点的示例(甚至在 Dojo 文档本身),我建议您查看 API Documentation 或至少查看 examples

    【讨论】:

      【解决方案2】:

      您可以使用 javascript 函数检查 id,例如:

       if (test.checked == 1){
                alert("checked") ;
          }
      else{
                alert("unchecked") ;
          }
      

      这里 .checked 将返回“1”以防复选框被选中。
      请在您的 javascript 中尝试此操作,如有任何疑问,请告诉我。

      【讨论】:

      • 我个人会使用小部件代码来测试是否选中了 dijit 复选框。 (我假设您使用的是纯 HTML/DOM 方法)。但小部件代码几乎相同。 (顺便说一句,我不是反对者)。
      • 是的,小部件方法是更好的一种 Dimit 但或多或少相同。
      • 确实,它只是在屏幕后面做同样的事情。顺便说一句,我赞成您的回答(以消除负面分数)。
      猜你喜欢
      • 1970-01-01
      • 2014-03-09
      • 1970-01-01
      • 1970-01-01
      • 2015-06-11
      • 2011-06-22
      • 1970-01-01
      • 2019-07-24
      • 2018-01-15
      相关资源
      最近更新 更多