document.getElementsByName(nm)[0].onchange=new Function("changeCard('"+para1+"','"+para2+"')");

解决方案 »

  1.   


    <script type="text/javascript">
    function init(para1,para2){
    var selectarr = document.getElementsByTagName("select"), f = function () {
    changeCard(para1, para2);
    }, i = 0, nm;
    for (; i < selectarr.length ; i ++) {
    nm = selectarr[i].name, obj = selectarr[i];
    if (obj.options.length == 0) {
    obj.outerHTML = "<input type='text' class='form1' name= '" + nm + "'>";
    document.getElementsByName(nm)[0].onchange = f;
    }
    }
    }
                    
    function changeCard(para1,para2){
        alert(para1.value)
        alert(para2.value)
    }window.onload = function () {
    var i = document.getElementsByTagName("input");
    init(i[0], i[1]);
    };
    </script>
    <select name="se"></select>
    <input value="a" />
    <input value="b" />
      

  2.   

    不好意思,我看错了,也可
    <script type="text/javascript">
    function init(para1,para2){
        var selectarr = document.getElementsByTagName("select"), f = function () {
            changeCard(para1, para2);
        }, i = 0, nm;
        for (; i < selectarr.length ; i ++) {
            nm = selectarr[i].name, obj = selectarr[i];
            if (obj.options.length == 0) {
                obj.outerHTML = "<input type='text' class='form1' name= '" + nm + "'>";
                document.getElementsByName(nm)[0].onchange = (function(para1,para2){return function (){alert(para1.value),alert(para2.value)}})(para1,para2)
                new Function("changeCard("+para1+","+para2+")");
            }
        }
    }
                    
    window.onload = function () {
        var i = document.getElementsByTagName("input");
        init(i[0], i[1]);
    };
    </script>
    <select name="se"></select>
    <input value="a" />
    <input value="b" />
      

  3.   

    晕,又错!有一句没注释掉
    <script type="text/javascript">
    function init(para1,para2){
        var selectarr = document.getElementsByTagName("select"), f = function () {
            changeCard(para1, para2);
        }, i = 0, nm;
        for (; i < selectarr.length ; i ++) {
            nm = selectarr[i].name, obj = selectarr[i];
            if (obj.options.length == 0) {
                obj.outerHTML = "<input type='text' class='form1' name= '" + nm + "'>";
                document.getElementsByName(nm)[0].onchange = (function(para1,para2){return function (){alert(para1.value),alert(para2.value)}})(para1,para2)
                //new Function("changeCard("+para1+","+para2+")");
            }
        }
    }
                    
    window.onload = function () {
        var i = document.getElementsByTagName("input");
        init(i[0], i[1]);
    };
    </script>
    <select name="se"></select>
    <input value="a" />
    <input value="b" />