选择框的onchange事件

时间:2012-04-12 10:47:41

标签: php javascript html

我正在使用一个选择框来显示数据库中的“enterpirses”列表。但是onchange事件并没有触发。但是当我手动输入querystring的值时,它就开始工作了。我不明白为什么会这样。

我是javascript和php的新手,请建议我解决这个问题。

<select id="enterprisebox" onchange="javascript:valueselect()" >
    <option value="-">-</option>

    <?php foreach($enterprise as $val) { ?>
    <option value="<?php echo $val['customer_id'];?>"><?php echo $val['customer_name']?>
    </option>
    <? } ?>

</select>

我的javascript是 -

function valueselect()
{
    var i = document.getElementById('enterprisebox');
    var p = i.options[i.selectedIndex].value;
    //alert(p);
    window.location.href = "channelinformation.html?selected="+p;
}

3 个答案:

答案 0 :(得分:4)

onchange="javascript:valueselect()"替换为onchange="valueselect(this.value);"

function valueselect(myval)
{
      window.location.href = "channelinformation.html?selected="+myaval;
}

您可以直接使用

onchange="window.location='channelinformation.html?selected='+myaval"

答案 1 :(得分:2)

让生活变得更轻松并使用jQuery:

$(document).ready(function () {  
    $('#enterprisebox').change(function () {
       window.location.href = "channelinformation.html?selected="+ $(this).val();
    });    

});

答案 2 :(得分:0)

试试这个,

<select id="enterprisebox" onchange="javascript:valueselect(this)" >
    <option value="-">-</option>

    <?php foreach($enterprise as $val) { ?>
    <option value="<?php echo $val['customer_id'];?>"><?php echo $val['customer_name']?>
    </option>
    <? } ?>

</select>

<script>
   function valueselect(sel) {
      var value = sel.options[sel.selectedIndex].value;
      window.location.href = "channelinformation.html?selected="+value;
   }
</script>