21,887
社区成员
发帖
与我相关
我的任务
分享
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>";
测试通过。
<?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的值比对看看,是哪里出问题。