解决方案 »

  1.   

    模拟了一下,是可以的。<?php
    $row[11] = 1;
    ?><select id="paid_type">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
    </select><script>
    function setSelectByValue(domSelect,strVal){
        var opts = domSelect.options;
        for(var i=0,j=opts.length;i<j;i++){
            if(opts[i].value===strVal){
            return domSelect.selectedIndex=i;
            }
    }
    }
    setSelectByValue(document.getElementById('paid_type'),'<?php echo ($row[11])?>');
    </script>
    如果你还是不行,可以在循环体中输出opts[i] 与 strVal的值比对看看,是哪里出问题。
      

  2.   

    我的实现是这样,你参考下:
    Javascript代码:case 'str':
                    eq_select1=op=='eq'?'selected':'';
                    eq_select2=op=='neq'?'selected':'';
                    eq_select3=op=='include'?'selected':'';
                    eq_select4=op=='not_include'?'selected':'';
                result="<select name='op'><option value='eq' "+eq_select1+">等于</option><option value='neq' "+eq_select2+">不等于</option><option value='include' "+eq_select3+">包含</option><option value='not_include' "+eq_select4+">不包含</option></select>";
    测试通过。
      

  3.   

    通过浏览器firebug,看下是否报错?