JavaScript 'function undefined' 使用 jsfiddle 时出错

标签 javascript html

我只是想完全理解一个错误,因为有时我可以绕过它,有时却不能。我尝试过只编写一个函数:

function toggleButton() {
}

但我遇到了同样的错误。这是 .js 示例。

var checkBox = document.getElementById("chkMyBox"); 

 checkBox.onclick = function toggleButton(e, obj1) 
 {    
var btnElement = document.getElementById("btnMyButton");
    if(btnElement != null) {
        alert("Element not null");
    if(e.target.checked && obj1 != null) {
        alert("Checking check " + obj1.checked);
         if(obj1.checked == true && btnElement.getAttribute('disabled') == false){
            btnElement.getAttribute('disabled') = false;
        } else {
                btnElement.getAttribute('disabled') = true;
        } 
    }
  }  
}

这是 html:

<form id="frmCheckBox">
   <input type="checkbox" id="chkMyBox" />    
   <button id="btnMyButton" disabled>I'm a Button</button>
</form>

http://jsfiddle.net/Arandolph0/h8Re6/3/

最佳答案

更改使用name的这一行:

<input type="checkbox" name="chkMyBox" />    

改为使用id:

<input type="checkbox" id="chkMyBox" />    

或者您可以使用:

var elements = document.getElementsByName('chkMyBox');
var element = elements[0]; //first element with that name in the array

var element = document.getElementsByName('chkMyBox')[0];

更新(因为OP更改了原始问题的代码):

function toggleButton(e, obj1) 

这不起作用,因为回调函数只有一个参数 (e)。 使用 e.target 获取元素。

关于JavaScript 'function undefined' 使用 jsfiddle 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17658700/

相关文章:

javascript - 使用 javascript 检索 url 查询字符串来解析 if/else 语句并重定向

html - CSS:悬停时背景从下到上填充:

javascript 不渲染样式

javascript - 你能在失去焦点时阻止 jQuery focusout 触发吗?

javascript - Bootstrap3 col-md-4 和 col-lg-4 在 IE8 下不工作?

javascript - 通过引用复制对象是否有实际用途?

javascript - 如何更新 React Hooks 中对象数组中的状态 `onChange`

html - 如何 == 为 CSS Helper 中的模型方法类?

javascript - HTML 5 文件阅读器读取 javaScript 文件

javascript - 在加载到 html 之前,我如何获取图像大小?