用javascript  new出来的select怎么判断选中值我用下面的代码创造select,var hh = "<select id='buha' size='3' onChange='test()'><option value='3'>sdfsdf</option><option value='4'>answever</option><option value='5'>mmnnbb</option></select>";
$("#hen").append(hh);可是我怎么在javascript中取得这个select选中的文本和值呢,我试着在这个select的change事件里取$(this).val(),结果为“”,取$(this).html(),结果为undefine,另外,为什么不能事先给new出来的select注册事件,就是我事先写好$("#buha").change(function(){.....])这个事件不能调用,但是我可以 用上面的代码注册onChange事件,然后,test()可以正常调用,
谢谢你的指点,谢谢,嘿

解决方案 »

  1.   


    <!Doctype html public '-//w3c//dtd xhtml 1.0 transitional//en' 'http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd'>
    <html xmlns='http://www.w3.org/1999/xhtml'>
    <head>
    <script language='javascript' src='http://code.jquery.com/jquery-1.4.2.min.js'></script>
    <script language='javascript' type='text/javascript'>
    $(document).ready(
    function()
    {
    var hh = "<select id='buha' size='3' onChange='test($(this))'><option value='3'>sdfsdf</option><option value='4'>answever</option><option value='5'>mmnnbb</option></select>";
    $("#hen").append(hh);
    }
    );
    function test(obj){
    alert($(obj).val());
    }
    </script>
    </head>
    <body>
    <div id='hen'></div>
    </body>
    </html>
      

  2.   

    怎么用同样的方法,取$(obj).html()或者$(obj).text(),结果把所有选项的文本都取出来了,如果我想取单个的,怎么办呢,还请你们能答复,谢谢了,
      

  3.   


     alert($(obj).find('option[selected]').text());
      

  4.   

    不懂JQuery
    改了个普通版的代码,LZ参考一下<!Doctype html public '-//w3c//dtd xhtml 1.0 transitional//en' 'http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd'>
    <html xmlns='http://www.w3.org/1999/xhtml'>
    <head></head>
    <body>
    <div id='hen'></div>
    </body>
    <script language='javascript' type='text/javascript'>
    function $(id)
    {
       return document.getElementById(id);
    }
    (function(){
        var hh = "<select id='buha' size='3' onChange='test(this);'><option value='3'>sdfsdf</option><option value='4'>answever</option><option value='5'>mmnnbb</option></select>";
        $("hen").innerHTML = hh;
    })();
    function test(obj){
        alert(obj.options[obj.selectedIndex].innerHTML + ":" + obj.value);
    }
    </script>
    </html>
      

  5.   


    <!Doctype html public '-//w3c//dtd xhtml 1.0 transitional//en' 'http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd'>
    <html xmlns='http://www.w3.org/1999/xhtml'>
    <head>
    <script language='javascript' src='http://code.jquery.com/jquery-1.4.2.min.js'></script>
    <script language='javascript' type='text/javascript'>
    $(document).ready(
        function()
        {
        var hh = "<select id='buha' size='3' onChange='test($(this))'><option value='3'>sdfsdf</option><option value='4'>answever</option><option value='5'>mmnnbb</option></select>";
        $("#hen").append(hh);
        }
    );
    function test(obj){
        var val=$(obj).val();
        alert($(obj).find("option[value='"+val+"']").text());
    }
    </script>
    </head>
    <body>
    <div id='hen'></div>
    </body>
    </html>