我有一个包含数据库ID的下拉列表,因此当我根据ID从列表中选择一个ID时,必须填充文本字段。
<label class="col-md-2 control-label">Equipment ID:<span class="required">*</span></label>
<div class="col-md-9">
<select name="equipmentid" id="input18" class="select2-select-00 col-md-12 form-control input-width-xlarge form-control required" multiple size="5">
<?php
$data = DB::table('tbl_addequipment')->where('last_month', '=', $data2)->get();
foreach ($data as $row2) {
?>
<option value="<?php echo "EQ".$row2->equipment_tag ?>"><?php echo "EQ".$row2->equipment_tag ?></option>
<?php } ?>
</select>
</div>
和我的文字字段
<label class="col-md-2 control-label">Maintenance Type:<span class="required">*</span></label>
<div class="col-md-10" >
<input class="form-control input-width-xlarge form-control required" style="display: block; margin-top: 6px;" type="text" name="maintenancetype" id="maintenancetype" >
</div>
我已经尝试过这段代码,但是没有工作,我也没有收到错误。
<?php
$data3 = $row2->equipment_tag ;
$data4 = DB::table('tbl_maintenancerecord')->where('equipment_tag', '=', $data3)->get();
?>
<script type="text/javascript">
$('select[name="equipmentid"]').change(function()
{
$('#maintenancetype').val($('select[name="equipmentid"] option:selected').data('mstatus'));
}
);
</script>
答案 0 :(得分:0)
尝试:
$data4 = DB::table('tbl_maintenancerecord')->where('equipment_tag', '=', $data3)->select('mstatus')->get()->first();
echo '<div class="tbl_maintenancerecord" data-tag="'.$data3.'" data-val="'.$data4.'"></div>';
<script type="text/javascript">
$(function(){
$('select[name="equipmentid"]').change(function()
{
var d = $(this).find('option:selected').val();
$('#maintenancetype').val($('body').find('div[data-tag="'+d+'"]').attr('data-val'));
});
});
</script>
答案 1 :(得分:0)
据我所知,您缺少数据属性&#34; mstatus&#34;在选定的选项字段上。你在哪里设置这个?在更改功能后,请尝试以下操作:
$('#maintenancetype').val($('#equipmentid').find(":selected").text());