执行自定义函数onChange

时间:2013-01-06 23:04:33

标签: javascript html dom

纯JavaScript。

我在HTML页面中有一个复选框。我想执行

App.setCheckedProperty(name, val);

其中name是复选框的name属性,val true / false表示已选中。

如何实施?我在网上找不到任何材料。

UPD

<input type="checkbox" name="smth" onChange="<WHAT TO DO HERE?>" checked />

最终执行必须相同:

App.setCheckedProperty("smth", false);

UPD2

JavaScript中是否有this.namethis.checked这样的结构?

1 个答案:

答案 0 :(得分:1)

你不应该在你的html中“内联”。这只是不好的做法。我想你想要做的是循环几个复选框?

请参阅此代码:

// declare all vars that you need and find all input-elements
var i, input, inputs = document.getElementsByTagName('input');

// loop over all input-elements
for(i = 0; i <= inputs.length; i++) {
  input = inputs[i];

  // if the current element is a checkbox
  if(input.type === 'checkbox') {

    //append a click-handler to that checkbox
    input.onclick = function () {

      // if the checkbox is clicked, you can find the name and the checked-property
      App.setCheckedProperty(this.name, this.checked);
    };   
  }
}

这里有一个工作示例(我只是提醒而不是App.setCheckedProperty):http://jsfiddle.net/5wExJ/