首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

通过读取数据库+循环的方法做了一个select下拉列表,但始终无法通过js赋予指定值,如何解决?(撒分,不够另补)

2013-08-16 
通过读取数据库+循环的方法做了一个select下拉列表,但始终无法通过js赋予指定值,怎么解决?(撒分,不够另补)

通过读取数据库+循环的方法做了一个select下拉列表,但始终无法通过js赋予指定值,怎么解决?(撒分,不够另补)
想了想,这个和js其实不怎么相关,还是php问题。

问题背景:该页面左边是一些记录的列表,右边是很多空框,供填入一些信息,之后保存。然后点击左边记录的其中一项,相关信息就能在右边出现。上述功能我都已经实现了。
问题:右边很多空框中有一项是select下拉列表进行选择哪辆车。我的做法是从数据库中读取carNum(integer类型),以此作为select中option的value,而显示的值是数据库中对应该车辆的licenseNum(车牌号),上述用php循环的方法查询并且实现的。但我用js指定该id的select的值时,该select一点反应没有。我把这个select换成确定的select(即去除php循环,而是在htm中直接设定value和选项名称),则js可以指定该select的值,并显示出该值。

但我希望能循环设置该select,而且js能指定该值(显然,这样的话就可以动态显示了。)
该如何解决呢? 撒分,不够的话回帖或者私信给我,可另补。

直接上代码:


<!---下面是htm直接设定html的select的代码---->
<select id="showOrder_21" name="truck" class="dropdown" style="margin-left:0px !important; border:1px solid #BABABA !important;">
        <option  value ="1">QAZ123</option>
        <option  value ="2">WSX234</option>
        <option  value ="3">EDC345</option>
        <option  value ="4">TGB456</option>
</select></td>


下面是采用循环的方式实现的select:

 <select id="showOrder_21" name="truck" class="dropdown" style="margin-left:0px !important; border:1px solid #BABABA !important;">
<?php 
$query = "select * from transport.truck order by carNum";
$data = getAll($query);
foreach($data as $each)
{
?>
<option value="<?php  echo $each['carNum'];  ?> "><?php echo $each['licNum'];?></option>
<?php } ?>
</select></td>




下面是我用的js 部分:

<script type="text/javascript">
    $(document).ready(function(){
        $(".LeftTask").click(function(){
       
            $(this).css("background","#A8A8A8");
            $(this).siblings().css("background","white");
            var orderID = $(this).find('input').val();
            $.ajax({
                type:"get",
                url:"main/ajax.php",


                data:{
                    orderID:orderID
                },
                success:function(msg){
                    msg = eval("("+msg+")"); 
<!---当中删除大量不相关的显示--->
                    $("#showOrder_21").val(msg.truck);

              }
        });
    });

});    
</script>




大牛们,求指导!!!
怎么解决这个问题呢?求关键代码片段或网上案例,万分感谢!!!
[解决办法]
$(".LeftTask").click(function(){

改成

$(".LeftTask").live("click",function(){  ....... 

后者的优势是可以"即使某dom节点是页面载入完成之后生成的,也能绑定事件".

参阅jquery手册.
[解决办法]
<option value="<?php  echo $each['carNum'];  ?> "><?php echo $each['licNum'];?></option>
中间多了个空格!
<option  value ="1">QAZ123</option>
变成了
<option  value ="1 ">QAZ123</option>
不出问题才怪呢

热点排行