无法举办活动&#34; onchange&#34;在<select>在javascript中工作</select>

时间:2014-04-10 14:02:41

标签: javascript jquery html handlebars.js

我已经尝试了很多方法让它发挥作用,永远不会成功。

以下是代码:

JS:

console.debug("before");
$("#link-ranges").onchange = function() {
    console.debug("test");
};

before显示一次,当我点击选项时,测试永远不会。

HTML:

<label for="link-ranges">Link target entities</label>
<div class="controls" id="rangeDiv">
    <select class="span12" id="link-ranges" size="5"></select>
</div>
<script type="text/x-handlebars-template" id="range-list-template">
    {{#if ranges}}
        <select class="span12" id="link-ranges" size="5">
            {{#each ranges}}
                <option value="{{this.id}}">
                    {{this.name}}
                </option>
                {{rangeOption}}
            {{/each}}
        </select>
    {{/if}}
</script>

以下是HTML页面中的结果:

<select class="span12" id="link-ranges" size="5">
    <option value="1">
        data1
    </option>
    <option value="2">
        data2
    </option>
</select>

2 个答案:

答案 0 :(得分:2)

这是jquery中更改的无效语法。还要确保将代码包装在DOM ready事件中。试试这个:

$(document).ready(function(){
  $("#link-ranges").on('change',function() {
      console.debug("test");
  });
});

答案 1 :(得分:-1)

  $( "#link-ranges").live('change',function() {
     console.debug("test");
    };

 $( "#link-ranges").on('change',function() {
     console.debug("test");
    };