PHP Codeigniter:在下拉列表中获取数据并填充到文本框中

PHP Codeigniter:在下拉列表中获取数据并填充到文本框中,codeigniter,Codeigniter,我想说的是:当您单击下拉或选择时,它将获取prod_temno、prod_desc、prod_selluom的数据,然后填充到名为:idesc和inventoryuom的文本框中。我希望你能帮助我。提前谢谢 <table> <tr><form name="form1"> <td>Item No:</td> <td> <select type="text" id=

我想说的是:当您单击下拉或选择时,它将获取prod_temno、prod_desc、prod_selluom的数据,然后填充到名为:idesc和inventoryuom的文本框中。我希望你能帮助我。提前谢谢

 <table>
    <tr><form name="form1">
        <td>Item No:</td>
        <td>
        <select type="text" id="inventoryitemno" name="inventoryitemno" >
            <?php
                foreach($itemno as $row){
                    echo "<option id=".$row->prod_id.">".$row->prod_itemno."</option>";
                }
            ?>               
        </select>                                
        </td>
    </tr>
    <tr>
        <td>Description:</td>
        <td><input type="text" id="idesc" name="idesc"/></td>  
    </tr>
     <tr>
        <td>UOM:</td>
        <td><input type="text" id="inventoryuom" name="inventoryuom" /></td>
    </tr>

</table>

我希望你们明白这一点。谢谢。

您也可以参考此链接->

我假设当有人更改选择框时,您必须调用该函数。您必须通过ajax调用模型,然后将响应放入文本框:-

$('#inventoryitemno').change(function() 
{   

   // write ajax code and call your model and dump the result into your textbox

    $.ajax({
     type:"POST",
     data:"value="+$(this).val(),
     url:"your_controller_path",
     success:function(msg)
     {
        $('#idesc').val(msg);
     }

  });



});
您的控制器应如下所示:控制器名称为product_controller:-

function product_details()
{
   $value = $this->input->post('value'); // value from ajax

   $this->products_model->products_model($value);

   echo "response"; //return the result back to ajax success function

}
这是你想要的吗

<?php
$itemno = array('0'=>'a','1'=>'b','2'=>'c');

?>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js" ></script>
<table>
<tr><form name="form1">
    <td>Item No:</td>
    <td>
    <select type="text" id="inventoryitemno" name="inventoryitemno"  onchange="javascript:set_to(this.value);" >
         <?php
             foreach($itemno as $key=>$val){
                echo "<option id=".$key.">".$val."</option>";
            }
        ?>               
    </select>                                
    </td>
</tr>
<tr>
    <td>Description:</td>
    <td><input type="text" id="idesc" name="idesc"/></td>  
</tr>
 <tr>
    <td>UOM:</td>
    <td><input type="text" id="inventoryuom" name="inventoryuom" /></td>
</tr>

</table>
<script type="text/javascript">
function set_to(id)
{

    $('#idesc').val(id);
}
</script>

你的意思是说,如果你改变选择框,它应该获取数据并放入文本框,对吗?是的,先生。你能帮我吗?谢谢看下面我的答案你可以这样尝试这个概念是正确的,但代码是错误的,我的下拉/选择数据不见了。这个已经在取物品了。亲爱的,根据你的需要换一下。删除我的数组放入来自数据库的数据
<?php
$itemno = array('0'=>'a','1'=>'b','2'=>'c');

?>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js" ></script>
<table>
<tr><form name="form1">
    <td>Item No:</td>
    <td>
    <select type="text" id="inventoryitemno" name="inventoryitemno"  onchange="javascript:set_to(this.value);" >
         <?php
             foreach($itemno as $key=>$val){
                echo "<option id=".$key.">".$val."</option>";
            }
        ?>               
    </select>                                
    </td>
</tr>
<tr>
    <td>Description:</td>
    <td><input type="text" id="idesc" name="idesc"/></td>  
</tr>
 <tr>
    <td>UOM:</td>
    <td><input type="text" id="inventoryuom" name="inventoryuom" /></td>
</tr>

</table>
<script type="text/javascript">
function set_to(id)
{

    $('#idesc').val(id);
}
</script>
What about "<DATALIST>"?

<input type=text name='somename' list='somelist'>
<datalist id="somelist">
<option value=1>One</option>
.
.
<option value=99>Ninety-Nine</option>
</datalist>

You can even fill the list from a DB with mysql
<datalist = id=somelist>
<?
$sql="select * from my_table";
$rs=mysql_query($sql,$mysql_connection);
$row=mysql_fetch_assoc($rs);
do {
 printf("<option value='%s'>",$row['some_field'])}
while($row=mysql_fetch_assoc($rs));

Hope that helps.